“__printflike__ 修饰符”到底是什么?这个词是什么意思?
据猜测,它告诉编译器您正在使用的函数采用以下形式的参数[anything, ] format, ...
哪里的format, ...
部分看起来像参数printf
. The __printflike__
属性允许编译器根据字符串格式测试参数列表中的类型。当您编写类似这样的函数时,就会出现这种情况log(format, ...)
并使用vsprintf
在将字符串发送到某些特殊的日志接口之前,将格式化工作从属于通常的标准库函数。
如果您使用 GCC 那么它可能是#define
在你的项目中类似:
#define __printflike__ __attribute__((format(printf, 1, 2)))
Where 1, 2
意思是format, ...
出现在位置1和2。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)