#warning预处理器指令的可移植性 [英] Portability of #warning preprocessor directive
问题描述
我知道#warning指令不是标准的 C / C ++,但是几个编译器支持它,包括gcc / g ++。但对于那些不支持它,他们会默默忽略它,否则会导致编译失败?换句话说,我可以安全地在我的项目中使用它,而不破坏不支持它的编译器的构建。
I know that the #warning directive is not standard C/C++, but several compilers support it, including gcc/g++. But for those that don't support it, will they silently ignore it or will it result in a compile failure? In other words, can I safely use it in my project without breaking the build for compilers that don't support it?
推荐答案
很可能,如果编译器不支持#warning,那么它会发出错误。与#pragma不同,没有建议预处理器忽略它不能理解的指令。
It is likely that if a compiler doesn't support #warning, then it will issue an error. Unlike #pragma, there is no recommendation that the preprocessor ignore directives it doesn't understand.
我已经使用了编译器在各种不同的平台,他们都支持#warning。
Having said that, I've used compilers on various different (reasonably common) platforms and they have all supported #warning.
这篇关于#warning预处理器指令的可移植性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!