关于const常量的地址经过const_cast转换之后,发生了什么

本文详细解析了C++中常量指针的特性,通过实例展示了常量指针如何指向常量对象,以及如何通过常量指针修改其指向对象的值。解释了内存模型在此过程中的作用,以及编译器如何处理此类操作。

示例代码如下:

 

运行结果:

*j==15

const int i==0

const int i's address:0012F7E4

pointer j's address:0012F7E4

虽然程序每次运行地址会有变化,但是常量i的地址和指针j指向的确实是同一个地址。对j指向的内容做改变之后,i仍是常量,i值不变,指针j指向的变量值发生变化,g++编译器,VS2010编译器都是同样的结果,不太明白其中的内存模型是怎样的,求解答。

 

评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值