#define可以有多个参数吗?

标签 c

您好,想创建一个具有两个甚至三个参数的定义,这可能吗?

示例

#define my_define(param1,param2,param3)\
if (param1) \
{/*do something */} \
if (param2) \
{/*do something */} \
if (param3) \
{/*do something */} 

最佳答案

是的,#define 宏可以有多个参数。

具体来说,C99 指定兼容的实现必须能够处理宏的至少 127 个参数(在 C89 中过去为 31 个)。

关于#define可以有多个参数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7179572/

相关文章:

c++ - 0-1背包可以用一维数组实现吗?

c - 如果禁用 ASLR,mmap 是否具有确定性?

将存储在 char 数组中的字符串部分复制到另一个数组

c++ - LD_LIBRARY_PATH 和 LD_LIBRARY_PATH 有什么区别?

c - 访问结构体数组内的数组

c - 在 Linux 下,如何以编程方式检查给定 NIC 是否支持传输时间戳?

c - 无法在 C 中打开文件描述符

c - 如何使用基于TCP的HTTP下载图片?

C 中的字符指针

c - 按位 '&' 运算符