一、WIN32 _WIN32 _WIN64 宏
WIN32宏 --只要包含了 Windows.h,那么 WIN32 常量是肯定定义了的,所以不能用于判断平台环境。一般在 c/c++->预处理器->预处理器定义 里面有定义
_WIN32 --32位和64位程序都有,且总是定义的.
_WIN64 --只有64位程序才有
二、预定义__GNUC__宏
1 __GNUC__ 是gcc编译器编译代码时预定义的一个宏。需要针对gcc编写代码时, 可以使用该宏进行条件编译。
2 __GNUC__ 的值表示gcc的版本。需要针对gcc特定版本编写代码时,也可以使用该宏进行条件编译。
3 __GNUC__ 的类型是“int”,该宏被扩展后, 得到的是整数字面值。可以通过仅预处理,查看宏扩展后的文本。
三、预定义_MSC_VER宏
1 _MSC_VER是微软C/C++编译器——cl.exe编译代码时预定义的一个宏。需要针对cl编写代码时, 可以使用该宏进行条件编译。
2 _MSC_VER的值表示cl的版本。需要针对cl特定版本编写代码时, 也可以使用该宏进行条件编译。
3 _MSC_VER的类型是"int"。该宏被扩展后,得到的是整数字面值。可以通过仅预处理, 查看宏扩展后的文本。
Visual Studio 版本 |
---|