1、数组名是首地址
2、指针指向内存空间
区别如下:
#include<stdio.h>
int main()
{
char* p = "hello";
char a[6] = "hello";
a[0] = 'H';
//p[0] = 'H'; 错误的定义方式
p = "HELLO";
//a="HELLO"; 错误的定义方式
printf("%c\n", p[0]);
//printf("%c\n", a[0]);
return 0;
}
3、数组可以通过下表来改变单个字符的内容、指针不可以。
4、指针可以通过地址来改变字符串的内容,数组不可以。