版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_39642794/article/details/81631091
在一个双引号""内的字符序列或者转义字符序列称为字符串常量
例如:"HA HA!" "abc" "\n\t"
这些字符串常量是不能改变的,如果试图改变指针所指向的内容是错误的
因为字符串常量是存在静态内存区的,不可以改变的。
如定义字符串常量:
char* a="i love you.";
a[3]='p'(非法操作)。
因为a[3]本来就是一个常量,常量不能被改变。(比如 1=2一样)
如定义字符串变量:
char a[]="i love you.";
a[3]=‘p’是可以的.
因为这个a[3]不同于上例中的 这个是一个 char 类型的变量 。
但是字符指针变量指向是可以改变的。
如:char *a="I love my china"
char *a="I am student"
这个是可以的。