When a string contains no printable characters, it is called an empty string. The following declarations are empty strings:
char* emptyString1[1] = { '\0' };
char* emptyString2[100] = { 0 };
char* emptyString3[8] = { '\0' , 'h' , 'e' , 'l' , 'l' , 'o' , '\0' } ;
The first empty string is a character array of a single element—the nul character, or '\0'. The second empty string is a character array of 100 elements, all of which are '\0', the nul characters. The third empty string is also an empty string; even though it has printable characters, the nul character ('\0') in the zeroth element signifies the end of the string, thereby making it empty. After the first nul character, '\0', is encountered, it doesn't matter what comes after it; it is still seen as an empty string.
When an array reference...