c高级预处理

预处理

预处理格式要求

6/13/2016 11:17:27 PM

  1. 必须放在每行开头,因此在源文件中一行只能有一条预处理命令;
  2. 但是一条预处理指令可以放在多行,只需要在每行结尾添加 \ 即可。

宏定义

无参宏定义

  1. 宏定义不是声明或者语句,行末没有分号;

  2. 宏定义从定义处直到程序结束,如需提前结束,使用#undef来取消;

  3. 宏名在程序中使用双引号括起来,则预处理不替换;

  4. 对输出格式使用宏定义,可以减少麻烦;

带参宏定义

  1. 宏名和参数之间不能空格;

        #define MAX(a,b) ((a)>(b)?(a):(b))
    
  2. 形参不分配内存空间;不用类型定义;

  3. 形参只是标识符,调用时实参可能是表达式,因此需要将形参用括号括起来,如1所示;

        max = MAX((a+2), (b-3));
    
  4. 定义时,最好将整个宏定义式子用括号括起来;如1中所示。

加括号的目的是为了防止运算符的优先级导致意料之外的错误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MichaelJay2015

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值