1、数组名就是数组首元素的地址
char str[]="test string";
char *p = "test string";
cout<<str<<endl;
cout<<p<<endl;
结果:
2、数组初始化为常量的时候,数组名是常量指针,指针的值是不可以改变的,指针指向的值可以改变
char str[] = "test string";
char *p = "test string";
p++;//正确
str++;//报错,str是常量指针,值不能改变
*str = 'a';//正确