#include <iostream>
using namespace std;
int main(void)
{
char a[] = "hello";
char *p = "world"; //此处的字符串常量,只读,不能修改其值
a[0] = 'w'; //字符数组可以被改变
cout<<a<<endl;
p[0] = 'w'; //此处错误
cout<<p<<endl;
return 0;
}
运行上面的程序会出现下面的情况:
写错误
只有字符数组被修改了
结论:
字符数组:char a[] = "hello";
指向字符串的指针:char *p = "world"; 此时的字符串是只读,通过指针不能被修改。