Question: what is the difference between char array and char pointer?
Answer: defines "plain" char array objects s and t whose elements are initialized with character string literals. char *p = "abc"; defines p with type "pointer to char" and initializes it to point to an object with type "array of char" with length 4 whose elements are initialized with a character string literal.