c语言中宏定义是什么意思?

 我来答
风林火陰山雷
2013-11-12 · TA获得超过1.1万个赞
知道大有可为答主
回答量:2569
采纳率:100%
帮助的人:1948万
展开全部
您好!很高兴为您解答。

宏定义的用处主要体现在便于程序的调试上。

比如我要写一个计算圆相关信息(周长、面积等等)的程序,需要定义π(3.14):

#define PI 3.14

那么势必PI这个标识可以在程序中代替所有的3.14,如果我发现计算的精度不够,需要π的更多有效位时,则只需将宏定义修改为:

#define PI 3.1415926

那么程序中的所有PI都会变成3.1415926

可想而知,没有宏定义,我需要将代码中全部的3.14都手动改为3.1415926

即使是定义double PI=3.14;,你会发现当代码很长时,在乱军丛中找到一行“double PI=3.14;”是多么困难的事。

又比如数组,定义时是不能出现“int a[n];”这样的定义的,编译通不过,因为必须规定数组长度。

但如果是:

#define N 10
int a[N];
就可以,对宏定义编译器是不作检查的,应为宏定义只是简单的符号替换。所以一旦我还没有确定要定义多长的数组,但又想通过编译时,就可以提现宏定义的用处了。

如此看来,宏定义提升了程序编写的灵活性。

望采纳~如您还有不解,欢迎追问~
腾昌休秋芸
2019-07-29 · TA获得超过3794个赞
知道大有可为答主
回答量:3142
采纳率:31%
帮助的人:240万
展开全部
##用来连接前后两个参数,把它们变成一个字符串,比如BDBG_OBJECT_ID(abc)可解释为extern
const
char
bdbg_id_unused_abc
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
20092311101
2011-03-30 · TA获得超过112个赞
知道答主
回答量:170
采纳率:0%
帮助的人:145万
展开全部
就是给一些常用到的参数给一个值,在后面用到这个参数时就用这个宏标志代替旧可以了。旧比如楼上说的PI,每次都输入3.1415926比较麻烦,宏定义后就可以用PI代替3.1415926了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ai__hui123
推荐于2017-09-19
知道答主
回答量:25
采纳率:0%
帮助的人:23.4万
展开全部
形式:#define<宏标志><字符串>
例如 #define PI 3.14159
表示在以下的程序中 PI 课代替3.14159
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
永恒求知者
2011-03-30 · 超过13用户采纳过TA的回答
知道答主
回答量:34
采纳率:0%
帮助的人:36.3万
展开全部
说白了,就是文本处理,没那么复杂
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式