我想定义一个像 -
这样的宏#define log(lognumber,...) logreport(lognumber,__VA_ARGS__)
我想检查__VA_ARGS__
用户在调用log()时可以传递的参数的异常情况。请为__VA_ARGS__
提供例外情况。
[评论更新:]
我的意思是我想以这样的方式编写logreport,它应该将特定的数字打印到我已经定义的错误中。
举个例子,如果我正在传递
log(NOTE,"%s",str)
然后在那种情况下,它打印我在另一个文件中分配的特定ID,如msgid %s, msdstr %s (10223)
,但用户使用
log(NOTE,"DIRECT STRING")
确实需要[???]表示该字符串。那么,如果用户以这种方式传递参数,我将如何检查
log(NOTE,"%s",str)
或
log(NOTE,"direct string")
这种方式在logreport函数中?
答案 0 :(得分:0)
那么如果用户传递参数
,我该怎么检查呢?
目前唯一的方法是为"%s"
之类的转换说明符解析出第二个参数。