编译预处理 -- 带参数的宏定义--【原创】

如有转载请注明出处
 
编译预处理  --  带参数的宏定义
前面为输出文件,后面为输入文件

gcc -E -o test.i test.c

gcc -o test  test.i
 
test.c
 
test.i
 
 
 
取消宏定义
#undef 宏名
 
条件编译的三种形式
 
 
第三种
#if 常量表达式
  源码1.....
#else // 此部分可选
  源码2...
#endif
 
#----表示ABC(a) 即为 a这个字符串
 
 
 
##的用法
 
A_B(print_, menu)
 
等价为  print_menu()
 
 
__DATE__ 进行预处理的日期,注意是两个下划线喔,(“Mmm dd yyyy”形式的字符串文字)
 
__FILE__ 代表当前源码文件名的字符串文字
__LINE__ 代表当前源代码中的行号的整数常量
__TIME__源码文件的编译时间,格式为: "hh: mm: ss"
__func__ 当前所在函数名
 
test.c
 
test.i
 
欢迎交流

新浪博客:http://blog.sina.com.cn/u/2049150530
csdn博客:http://blog.csdn.net/u011749143
博客园:http://www.cnblogs.com/sky-heaven/
知乎:http://www.zhihu.com/people/zhang-bing-hua

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值