是的,不支持的标准特性会影响符合性。如果要使用不受支持的标准特性,并且需要确保符合性,可以使用条件编译来解决。例如,使用以下代码来检查在编译时是否支持某些标准特性:
#ifdef __STDC_VERSION__
# if __STDC_VERSION__ >= 199901L
/* C99 or later */
# endif
#endif
在上面的代码中,如果定义了 __STDC_VERSION__
,并且它的值大于等于 199901L
,则说明编译器支持 C99 或更新的标准。这样,就可以在使用不受支持的标准特性时采取适当的行动,例如使用替代实现或禁用特性。
上一篇:不支持的表达式:x => x