谢谢Lele
那个帖子看过,应该是都是通过##来吃掉前面的“,”
感觉上通过变换应该是可以把0个参数和1个参数分开,但是还没有找到办法。
特别前面还有a,b, c, d几个固定参数就更麻烦。
【 在 lele 的大作中提到: 】
: 这是因为按照 C 语言标准(C99以上),空的宏参数不会被省略,所以
: #define ARGS_NUM(...) ARGS_COUNT(placeholder, ## __VA_ARGS__, 4, 3, 2, 1, 0)
: 在没有给定参数时,会展开为
: ...................
--
FROM 120.245.92.*