首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

怎么修改常量字符串

2012-03-09 
如何修改常量字符串?char*pcharabc 怎么修改 abc 中的值?[解决办法]存放在静态存储区不允许修改其值

如何修改常量字符串?
char*   pchar   =   "abc ";
怎么修改 "abc "中的值?

[解决办法]
存放在静态存储区不允许修改其值
[解决办法]
字符串常量不允许修改,
如果强制修改,
程序将被非法关闭 ~
[解决办法]
todototry() 说的很好。还有,就算没有出现内存访问错误,也可能是有问题的。因为很多编译器它会只保存相同字符串的一个副本。也就是说,如果有:
char *str = "abc ";
如果你这样做:
{
str[0] = 'A ';
printf( "%s\n ", str); // Abc
printf( "%s\n ", "abc "); // abc ?
}
那么,输出为:
Abc
Abc // attention: you want to output "abc ".

所以基于各种原因,你最好在定义的时候就写成这样:
const char *str = "abc "; 以避免修改它。
[解决办法]
对,没办法更改的。
[解决办法]
常量的意思就是不能修改,怎么非要修改常量呢,要是想要修改就直接将之定义为变量不就可以了。


[解决办法]
问这个问题很经典哦,我以前写个函数老是发现报告错误,后来才知道是不能修改这个字符串!!
[解决办法]
修改编译器先
[解决办法]
不能改吧

热点排行