(int)c是不是将c这个变量复制一份,转换复制的变量,还是将变量的值复制一份,转换复制的值呢?
(int)c是不是将c这个变量复制一份,转换复制的变量,还是将变量的值复制一份,转换复制的值呢?
到底是复制变量,还是复制值?
[解决办法]
[解决办法]
是的 强制转换以后就是再堆栈中重新开一个4字节的单元存储这个转换以后的值 你可以用gdb查看以下堆栈 在举例说明下:如果有一个int i=1; 然后强制转换 (double)i 可以想象结果也是1 但是众所周知 double 的存储格式跟int是不一样的(高位为正负位 其次是11位的其他位(具体自己查阿 我忘记这个叫什么啦) 然后是52位的数据位) 如果不重新开辟地址怎么办? 请记住这个可是完全不一样的存储哈