我想用 C 编写一个宏,它接受任意数量的参数,而不是特定数量
例子:
#define macro( X ) something_complicated( whatever( X ) )
其中 X
是任意数量的参数
我需要它,因为 whatever
已重载并且可以使用 2 或 4 个参数调用。
我尝试定义宏两次,但第二次定义覆盖了第一次!
我正在使用的编译器是 g++(更具体地说,mingw)
最佳答案
C99方式,VC++编译器也支持。
#define FOO(fmt, ...) printf(fmt, ##__VA_ARGS__)
关于c - 如何制作可变参数宏(可变数量的参数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/679979/