... 和 __VA_ARGS__的区别是什么呢?

  1. __VA_ARGS__的展开是什么呢?
  2. ... 和 __VA_ARGS__的区别是什么呢?
  3. 直接使用printf(format, ....)不行吗?
    为什么还要重新定义下:#define debug(...) print(format,__VA_ARGS__)?
#define debug(...) print(__VA_ARGS__)

debug("%s, %d\n", "test", 100);
阅读 1.8k
1 个回答

1,2: __VA_ARGS__ 展开成宏调用时对应 ... 的部分

3: 等调试结束了,可以用

#define debug(...)

直接关掉所有调试输出。

推荐问题