感觉cosdos说法有问题,c1是立即数就没自己的内存了?


樱花大战, 有爱.
此贴作废
[此贴子已经被作者于2007-11-19 11:53:25编辑过]
4 这个数字有地址吗。
即使不是立即数,但 const 声明的变量本来就是不能改变的。
这点毋庸置疑,主要原因归于指针。
c1是普通变量,c2是一个指针常量.
c1被强制转型不会去掉常数性,
c2被强制转型时去掉常数性.
*(int *)&c2[0] 与 *(int *)c2 对于一维数组完全可以等价使用。
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
对于这个程序,编译器处理常量数组 的不足。
[此贴子已经被作者于2007-11-19 12:12:15编辑过]
[此贴子已经被作者于2007-11-19 12:18:26编辑过]
我最开始也是这样认为的,但我把它们的地址输出后是在一个数据段的
const常量数组和字符串又不同,你对字符串进行这样的操作是非法的