常量区中的数据是怎么存储的
实现字符串的赋值。等价系统提供的字符串赋值。底层字符数组是引用关系。
既然我们能拿到地址,先改改看。(能拿到地址,总想干点啥坏事。。。)
崩了,字符串常量存储在常量区,常量区的内存是不让修改的。为啥常量区的内存不让修改呢? 这个是规定,记住就行了。
看看我们把str2也赋值成“hello world”
结果字符数组的地址还是一样的。相同的常量值在常量区只有一份,不同的变量都是在引用这份数据。所以它不能修改,如果通过内存操作把常量数据修改了,那其他的引用都被修改了。那问题就大了。
版权声明:本文为rbin_2009原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。