const char*cities[5]=
{
"Gribble city",
"Gribbletown",
"New Gribble",
"San Gribble",
"Gribble Vista"
};
那为什么这个代码的char可以存那么多字符?
char *cities是char类型指针变量,这个指针变量指向字符串的首地址,这个字符串通常以'\0'作为串结束符,初始化时,可存字符的多少取决于内存的大小,对于 0 <= i < strlen(cities),cities[i]只占用一个字节。
而char *cities[N]是字符串指针数组,该数组的每个元素都是指针。
。。我可以这么理解吗。。字符串“abcd”其实是地址,然后我们建立的是指向这个地址的char指针。
追答不能这样理解“abcd”是字符串 不是地址 但语句的意思是把字符串的首地址赋予指针