如何使用预处理器指令确定编译器是否支持 C11 _Generic?

How to determine if C11 _Generic is supported by the compiler using preprocessor directives?

我想知道是否有任何方法可以确定是否可以使用预处理器指令为给定的编译器确定对 _Generic 泛型宏的支持,例如:

#if __C11_GENERIC_IS_SUPPORTED__ == 1

任何帮助将不胜感激...

_Generic 不是可选功能,因此没有功能测试宏。通常你只需要检查你的编译器声称实现的 C 版本。