1. 就像你第2问那样定义及初始化的。
2.它是指向字符串的指针数组。
你可以运行下:
#include
void main()
{
char *str[] = {"Hello", "C++", "World"};
int i;
for(i=0; i<3; i++)
printf("%s\n", str[i]);
}
或
#include
#include
void main()
{
char *str[] = {"Hello", "C++", "World"};
char **p;
for(p=str; p
}
1.char *str[3]={"Hello","C++","World"};这是指 定义一个含有3个元素的指针数组,并对它进行初始化。可能通过*(str[0]+1)的形式来引用Hello中的e元素
2.char (*)str[N];这个是指 指向N个数组元素的一维数组的指针变量。
你那个不是。
如引用代码如下:
#include
#include
main()
{
char *str[3]={"Hello","C++","World"};
printf("%s,%s,%c",str[0],str[0]+1,*(*(str+2)+1));
system("pause");
}
结果为:
Hello,ello,o