Interview answers verified by specialists.
Find interview questions and answers on this website:
One is a pointer to the first element in the array; the other is a pointer to the array as a whole. An array is a type. It has a base type (what it's an array of ), a size (unless it's an "incomplete" array), and a value (the value of the whole array). You can get a pointer to this value: char a[ MAX ]; /* array of MAX characters */ char *p; /* pointer to one character */ /* pa is declared below */ pa = & a; p = a; /* = & a[ 0 ] */ After running that code fragment, you might find that p and pa would be printed as the same value; they both point to the same address. They point to different types of MAX characters. The wrong answer is char *( ap[ MAX ] ); which is the same as this: char *ap[ MAX ]; This code reads, "ap is an array of MAX pointers to characters."