如何获取编译器预定义宏的值
C/C++编译器中常会用一些编译器预定义的宏作为判断条件以达到兼容多种编译器或同一编译器的多个版本的目的,那么在使用一个编译器的时候怎么知道编译器预定义了哪些宏,这些宏的值都是多少呢?不同的编译器可能有不同的方法,但大多可以获取,在此以gcc为例,执行以下命令即可打印当前gcc编译器预定义的所有宏和对应值的列表:
gcc -dM -E - < /dev/null
VC2015中预定义的宏可参看微软MSDN官方文档:https://msdn.microsoft.com/zh-CN/library/b0084kay.aspx