Bob Ammerman [RAMMERMAN at PRODIGY.NET] of RAm Systems says:
char string[10]; // reserves a 10 character area of memory. 'string' is the address // (ptr) of the first of those. char *sptr; // reserved memory for a _pointer_ to one or more characters sptr = "Hello"; // allocates 6 characters of memory to hold hello and a null and // puts a pointer to those six characters in sptr string = "Hello"; // illegal because you can't change the value of 'string' which is a pointer // to those 10 reserved characters. string[0] = 'H'; // valid: stores H at the first character pointed to by string *string = 'H'; // valid: does the same thing strcpy(string,"Hello"); // valid: calls a routine to copy characters from the "Hello
// memory locations pointed to by 'string'
See also: