关于C语言中关键字"const"编译器怎么处理.

82 views
Skip to first unread message

杨博东

unread,
Oct 19, 2015, 3:33:03 AM10/19/15
to 西邮Linux兴趣小组
const int a = 5;
int *p = (int *)&a;
*p = 10;
这样为什么会改变a的值呢?

黑铁柱

unread,
Oct 19, 2015, 10:32:11 PM10/19/15
to 杨博东, 西邮Linux兴趣小组
你翻译一些这一段代码是什么意思,翻译成中文,  

--
--
要退订此论坛请发邮件至 xiyoulinux-...@googlegroups.com
更多选项: http://groups.google.com/group/xiyoulinux?hl=zh-CN
提问前建议您阅读(提问的智慧):http://www.xiyoulinux.org/blog/?p=64
---
您收到此邮件是因为您订阅了Google网上论坛上的“西邮Linux兴趣小组”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到xiyoulinux+...@googlegroups.com
要查看更多选项,请访问https://groups.google.com/d/optout

代晋玮

unread,
Oct 22, 2015, 9:28:52 PM10/22/15
to 黑铁柱, 杨博东, 西邮Linux兴趣小组
C语言中的const 只是只读的变量,既然是变量,就能找到其存储地址改变其值;
而C++中的const是常量,和C语言中的const还是有本质的区别的。


这有个链接,你可以参考一下。

赖伟峰

unread,
Jul 6, 2018, 5:07:20 AM7/6/18
to 西邮Linux兴趣小组
学到了,感谢

在 2015年10月23日星期五 UTC+8上午9:28:52,david写道:
C语言中的const 只是只读的变量,既然是变量,就能找到其存储地址改变其值;
而C++中的const是常量,和C语言中的const还是有本质的区别的。


这有个链接,你可以参考一下。
在 2015年10月20日 上午10:31,黑铁柱 <kangq...@gmail.com>写道:
你翻译一些这一段代码是什么意思,翻译成中文,  

在 2015年10月19日 下午3:33,杨博东 <yangbod...@gmail.com>写道:
const int a = 5;
int *p = (int *)&a;
*p = 10;
这样为什么会改变a的值呢?

--
--
要退订此论坛请发邮件至 xiyoulinux-...@googlegroups.com
更多选项: http://groups.google.com/group/xiyoulinux?hl=zh-CN
提问前建议您阅读(提问的智慧):http://www.xiyoulinux.org/blog/?p=64
---
您收到此邮件是因为您订阅了Google网上论坛上的“西邮Linux兴趣小组”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到xiyoulinux+unsubscribe@googlegroups.com
要查看更多选项,请访问https://groups.google.com/d/optout

--
--
要退订此论坛请发邮件至 xiyoulinux-...@googlegroups.com
更多选项: http://groups.google.com/group/xiyoulinux?hl=zh-CN
提问前建议您阅读(提问的智慧):http://www.xiyoulinux.org/blog/?p=64
---
您收到此邮件是因为您订阅了Google网上论坛上的“西邮Linux兴趣小组”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到xiyoulinux+unsubscribe@googlegroups.com
要查看更多选项,请访问https://groups.google.com/d/optout

Reply all
Reply to author
Forward
0 new messages