有参宏定义
Posted LC编程开发者
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有参宏定义相关的知识,希望对你有一定的参考价值。
定义宏的时候,可以携带参数,如同定义函数一样,有形参列表。定义格式如下:
#define 宏名(形参列表) 表达式
注意:这里的形参列表,与函数的形参列表有区别。函数的形参列表有变量的数据类型名,这里定义宏的形参列表,不需要数据类型名。使用带参数宏时,如果需要传递参数,调用方法如同调用函数一样。程序测试例子如下:
程序运行结果如下:
可以看到,编译程序预处理的时候,碰到 print(10, 11);宏,就对宏进行替换展开,替换为:
printf("x = %d, y = %d\\n", x, y);
但是,x, y 符号是宏的参数,所以,需要进行替换。根据宏定义的参数顺序是 print(x, y);所以,在调用print(10, 11)宏的时候,按顺序替换,使用10替换x,11替换y。
韦凯峰 Linux C/C++ 程序设计教程,Linux 系统编程,Openwrt 系统开发,微信:13926572996,QQ:1523520001,博客:www.mylinux.vip
以上是关于有参宏定义的主要内容,如果未能解决你的问题,请参考以下文章