指针p 指向常量字符串(位于常量存储区),常量字符串的内容是不可以被修改的,企图修改常量字符串的内容而导致运行错误。所以这个问题出现的原因是char*s="Hello word",赋值的是字符串常量,存储在常量存储区,而常量存储区的内容是无法修改的。
void testCStr(){
char * s = "Hello word";
s[0] = 'a';
cout<<s<<endl;
}
指针p 指向常量字符串(位于常量存储区),常量字符串的内容是不可以被修改的,企图修改常量字符串的内容而导致运行错误。所以这个问题出现的原因是char*s="Hello word",赋值的是字符串常量,存储在常量存储区,而常量存储区的内容是无法修改的。
void testCStr(){
char * s = "Hello word";
s[0] = 'a';
cout<<s<<endl;
}