随手记录一下一些老忘记的宏…

_WIN64
#define xx(fmt, …) dbg_print(fmt, VA_ARGS) 贼特么好用的…

有时候需要自定义一些fmt的参数, 如果用上面的宏可能会导致多一个 逗号的情况

则可以用如下的

#define LCORE_ID(fmt, ...) printf("LCORE[%hu]"#fmt, rte_lcore_id() __VA_OPT__(,) __VA_ARGS__)

替换列表 可以含有记号序列 __VA_OPT__ ( 内容 ) ,若 __VA_ARGS__ 非空,则它会被 内容 替换,否则不展开成任何内容。

Reference

  1. cppreference.com