只想要简单查看可以使用命令 gcc -dM -E - < /dev/null
. (其实就是传入空源文件, 查看预处理结果).
或者阅读文档 https://gcc.gnu.org/onlinedocs/cpp/Predefined-Macros.html
与 GCC 类似, clang -dM -E - < /dev/null
.
阅读 MSDN 文档 https://docs.microsoft.com/en-us/cpp/preprocessor/predefined-macros
https://sourceforge.net/p/predef/wiki/Compilers/ 总结了各个编译器预定义的与自身版本相关的宏.
对应的操作系统会定义对应的宏.
__linux__
_WIN32 // Windows 系统 32 位或 64 位 程序
_WIN64 // 特指 Windows 系统 64 位 程序
__APPLE__