宏定义和宏函数

本文介绍了C语言中的宏定义,它是一种编译预处理命令,用于将标识符替换为指定的字符串。通过示例展示了宏如何工作,特别强调了在进行宏定义时需要注意的事项,如括号的使用以防止运算错误。此外,还提到了宏定义的格式规范,例如宏名通常使用大写字母,以及预处理命令以换行符结尾等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

宏定义

        在C语言中,使用关键字 #define 定义宏。

        所谓宏就是将一个标识符定义成一个字符串符,完成定义的命令成为宏定义预处理命令   ,其中,标识符称为宏明;当定义了宏明后,在源程序中就可以引用宏。     

        定义宏又称为编译预处理命令。宏名通常都用大写字母组成,以区别与一般变量名,数组名,指针变量名。

        例:定义一个比较大小的宏函数

        输出最大值为3;我们再使用一个函数的嵌套比较大小。

输出的结果为:

        我们预想的最大值应该为5,但运行结果却是1。解决方法就是在定义宏函数时,一般把函数中的变量加括号。

         给变量加了括号后,此时运行的结果为5;

 关于宏定义应该注意以下几点:        

        ①字符串不带双引号。

        ②宏明的前后应有空格,以便准确地界定宏名。

        ③C语言的预处理命令都是以换行符(\n)结尾的,即每条C语言预处理命令都占用一行。本命令不是语句,其后不要跟分号(;)。

        ④在字符串中如果出现运算符,要注意替换后的结果,通常可以再合适的位置上加括号。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值