C中符号常量用宏定义和const有什么区别

各有什么好处捏?... 各有什么好处捏? 展开
 我来答
半季流年
2010-09-25 · TA获得超过1533个赞
知道小有建树答主
回答量:616
采纳率:0%
帮助的人:768万
展开全部
相同点:两者的值都不能被修改
不同点:作用的范围不同,宏定义的变量在整个程序,而且定义时不需要写出变量类型,const则需要
举个例子,#define N 100和const int N=100;
宏定义的变量可以是任意类型,甚至是一个代数表达式
在任意一个函数中都可以使用N,都代表100
而const定义的变量虽然值不能修改,但也只能在定义该变量的函数体
内使用,除非定义的是全局变量
它们之间的差别不是很大,如果你想定义一个变量作用整个程序,就采用
宏定义的形式,之后如果你想修改这个变量,直接在定义出修改即可,当然
用const定义一个全局变量也能达到相同的目的
【原创答人】
cdkrr
推荐于2016-04-05 · TA获得超过354个赞
知道小有建树答主
回答量:355
采纳率:0%
帮助的人:341万
展开全部
define:定义预编译时处理的宏;
只进行简单的字符替换,无类型检测

const:定义程序中的常量,编译时处理;
常量修饰符,把变量定义为常量
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zzz_qqqo
2010-09-25
知道答主
回答量:4
采纳率:0%
帮助的人:0
展开全部
宏定义没有类型安全检查,没有const定义好
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式