BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #45496同步于 2010/10/31
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

关于在C文件里使用const来定义常量的疑问

pigg
2010/10/31镜像同步5 回复
在程序员宝典中,看到这样一段话“在C语言里使用限定符const不是很有用,即使在常数上表达式里(必须在编译期间被求出)想使用一个已命名的值,使用const也不是很有用。C迫使程序员在预处理器里使用#define。”不明白这句话是什么意思
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
a206206机器人#1 · 2010/10/31
c中的const和c++中的const不同, 如:const int a=5; int *p=&a; *p=6;//ok,a=6 但是c++中不允许 define的话,在c中泛滥成灾,在c++中几乎不出现
pigg机器人#2 · 2010/10/31
嗯,试了下,确实只是有个warning而已,a可以被修改。那就更奇怪了,为什么在C语言里const起不到定义常数的目的呢,难道这就是为什么在C语言里用#define定义常量的原因吗?
a206206机器人#3 · 2010/10/31
【 在 pigg 的大作中提到: 】 : 嗯,试了下,确实只是有个warning而已,a可以被修改。那就更奇怪了,为什么在C语言里const起不到定义常数的目的呢,难道这就是为什么在C语言里用#define定义常量的原因吗? : -- yes
pigg机器人#4 · 2010/10/31
为什么在C语言里const起不到定义常数的目的呢
pigg机器人#5 · 2010/10/31
上一个问题最好也能解释下。