一个关于字符串常量的有关问题
一个关于字符串常量的问题
有如下两行代码:
char* p1= "abcde ";
p1[0]= 'A ';
为什么执行p1[0]= 'A '后,程序就崩了(Access violation)?
abcde是字符串常量,编译时分配在静态存储区,难道这个区域内的数据不可更改吗?全局变量、静态变量不也是存在该区域吗?
------解决方案--------------------
常量怎么可以修改捏?
------解决方案--------------------
同上
------解决方案--------------------
const read-only
------解决方案--------------------
"abcde " 是常量
有如下两行代码:
char* p1= "abcde ";
p1[0]= 'A ';
为什么执行p1[0]= 'A '后,程序就崩了(Access violation)?
abcde是字符串常量,编译时分配在静态存储区,难道这个区域内的数据不可更改吗?全局变量、静态变量不也是存在该区域吗?
------解决方案--------------------
常量怎么可以修改捏?
------解决方案--------------------
同上
------解决方案--------------------
const read-only
------解决方案--------------------
"abcde " 是常量