例如:在主函数中,二者
int main()
{
char *str1 = "abcde"; //字符串常量(由于*str1只有4个存储单元,而"abcde"至少需要6个存储单元,故str1只能存储"abcde"的地址)
char str2[] = "abcde"; //字符数组
str1[0] = 'x'; //str1中只存放了"abcde"的地址,所以不能对其进行修改,这个语句语法没有错,但编译出现崩溃
str2[0] = 'x'; //字符数组str2[0]是将str[0]='a' 改为str[0]='x',没有问题
printf("haha\n");
return 0;
}