1.字符串常量:
char *CStringA="hello word"; //并不建议这样写
const char *CStringB="hello word"; //建议写成这样
*CStringA='a'; ///VC6.0运行时出错,字符串常量不允许修改
实际上,C语言中的标准,对于字符串常量必须要赋值给const char *的变量,这样就可以理解了字符串常量为什么不允许被修改了。。。指针所指向的是只读常量,但允许修改所指向的地址,也就是其他的常量。。。
2.字符数组:
char StringA[]="hello,word";
char StringB[]="hello,word";
*StringA='a'; ///StringA和StringB为两个完全的数组变量,改变其中一个的值,对另一个并不影响;
printf("%s\n",StringB);
若要修改其字符串的值,最好用字符指针。。。