0
我正在尝试为syslogs编写一个宏,它的公式如下。在syslog中写一个宏C
#define MYLOG_INFO(...) syslog(LOG_INFO, ...)
并在代码中使用这样的代码。
MYLOG_INFO("use: %s received\n", argv[0]);
但是,我看到这样的错误。
错误:之前预期的表达式 '...' 令牌
我试图改变的......到__VA_ARGS__
警告:
__VA_ARGS__
只能出现在C99的扩张 variadic宏
有人可以指点我什么是去的一些提示错了吗? - 提前致谢!
在你的第一个定义中,用'__VA_ARGS__'替换第二个省略号'...',并保留第一个ons。 –
再次阅读警告信息......“'__VA_ARGS__'只能出现在C99可变宏” –
“的扩展***中,非常感谢。它会在替换第二个...之后生效__VA_ARGS_ –