C语言中的宏定义怎么用?

 我来答
仁昌爱娱乐
高粉答主

2020-02-16 · 专注关心娱乐
仁昌爱娱乐
采纳数:760 获赞数:459836

向TA提问 私信TA
展开全部

C语言中的宏定义用法分为两种。

1、不带参数的宏定义比较简单,就是用一个指定的标识符来代表一个字符串。它的一般形式为“#define 标识符 字符串”,例如#define E 2.718281828459。这种方法使用户能以一个简单的名字代替一个长的字符串。

2、带参数的宏定义不是仅仅进行简单的字符串替换,还要进行参数替换。其定义的一般形式为;“#define 标识符(宏名)(参数表) 字符串”,字符串中包含在括号中所指定的参数。例如#define S(a,b) a*b area=S(3. 2)。

扩展资料:

宏定义只占编译时间,函数调用则占用运行时间(分配单元,保存现场,值传递,返回),每次执行都要载入,所以执行相对宏定义会较慢。

使用宏定义次数多时,宏定义展开后源程序很长,因为每展开一次都使程序增长,但是执行起来比较快一点(这也不是绝对的,当有很多宏定义展开,目标文件很大,执行的时候运行时系统换页频繁,效率就会低下)。而函数调用不使源程序变长。

天云小店
推荐于2017-09-29 · TA获得超过2.8万个赞
知道大有可为答主
回答量:3281
采纳率:91%
帮助的人:779万
展开全部

宏定义的格式如下:

#define  标识符  字符串

其中,#表示这是一条预处理命令;#define为宏定义命令;“标识符”为宏定义的宏名;“字符串”可以上常数、表达式、格式串等。


举例如下:

#define PI 3.14   // 对3.14进行宏定义,宏名为PI
void main()
{
    printf("%f", PI);   // 输出3.14
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hehefaq
2011-11-10 · TA获得超过458个赞
知道小有建树答主
回答量:470
采纳率:0%
帮助的人:383万
展开全部
在想对特定的内容定义的时候用
参考网址 http://baike.baidu.com/view/2076445.htm

有问题请追问 满意记得采纳
来自:求助得到的回答
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
baimaode
2011-11-10 · TA获得超过123个赞
知道答主
回答量:82
采纳率:0%
帮助的人:48.5万
展开全部
#define 宏名称 定值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式