#include<iostream.h>
void main()
{int i;
char *name[]={"Turbo C","Visual C++","Borland C++"};
char **p;
cout<<"第1遍输出:"<<endl;
for(i=0;i<3;i++)
{p=name+i;
cout<<*p<<"\n";
}
cout<<"第2遍输出:"<<endl;
for(i=0;i<3;i++)
cout<<name[i]<<endl;
}
char **p是什么意思?
字符数组名name是指针的指针吗?
追答你可以把name当成是一个指针的指针,但是name是一个常量,它的值不能改变。
任何数组的数组名存的都一个指向数组首地址的地址值,这个值不能被改变,而LZ代码中,name数组里存的都是指针,那么name可以当成是指针的指针,与普通指针的指针差别就在于值不可写。
name是指针的指针吗?
追答name不是,你可以这样理解(char*)name[]={"Turbo C","Visual C++","Borland C++"};name是一个数组名字,而这个数组中的元素类型为(char*)也就是数组元素类型为字符串。
name是指针的指针吗?