「地表最强」C语言(十)#define定义常量和宏

环境:CLion2021.3;64位macOS Big Sur


「地表最强」C语言(一)基本数据类型
「地表最强」C语言(二)变量和常量
「地表最强」C语言(三)字符串+转义字符+注释
「地表最强」C语言(四)分支语句
「地表最强」C语言(五)循环语句
「地表最强」C语言(六)函数
「地表最强」C语言(七)数组
「地表最强」C语言(八)操作符
「地表最强」C语言(九)关键字
「地表最强」C语言(十)#define定义常量和宏
「地表最强」C语言(十一)指针
「地表最强」C语言(十二)结构体、枚举和联合体
「地表最强」C语言(十三)动态内存管理,含柔性数组
「地表最强」C语言(十四)文件
「地表最强」C语言(十五)程序的环境和预处理
「地表最强」C语言(十六)一些自定义函数和宏
「地表最强」C语言(十七)阅读程序

十、#define定义常量和宏

define是一个预处理指令而非关键字。

  • define定义符号常量
#define MAX 10000
  • define定义宏
#define ADD(X,Y) ((X)+(Y))
int main()
{
	printf("%d\n", ADD(2, 3));
	printf("%d\n", 4*ADD(2, 3));
}

在这里插入图片描述
注意,宏起到的作用实际上是替换,其中X与Y均为表达式,不难理解需要各自加括号为(X)和(Y);
而整体加括号是因为如果不加括号,带入line2的printf将会是4*(2)+(3),结果为11,显然与我们想要的结果不符;
加上括号后的效果4*((2)+(3)),结果为20,正确。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值