#include <stdio.h> main() { char *p = "abc"; printf("%s \n", p ); /* prints from the base of the string to the string termination \0 ie. the whole string 'abc' is printed */ printf("%s\n", p+1); /* uses pointer arithmetic to move to one character beyond the base of the string ie to the second letter and prints from there to the string termination \0. So, 'bc' is printed */ printf("%c \n", *p ); /* uses the dereferenced value of the pointer p to print a single character, so placeholder is %c and the dereferenced value of pointer p is the base of the string ie the first element. The letter 'a' is printed */ }