各个平台的内置宏定义
- Windows
WIN32
、_WIN32
、_WIN32_
、WIN64
、_WIN64
、_WIN64_
- Android
ANDROID
、_ANDROID_
- Linux
__linux__
- iOS/Mac
__APPLE__
、TARGET_OS_IPHONE
、TARGET_IPHONE_SIMULATOR
、TARGET_OS_MAC
编译器的判定
- VC
- _MSC_VER
-
GCC/G++
-
__GNUC__
-
-
SunCC
-
__SUNPRO_C和__SUNPRO_CC
-
ANSI C标准中标准预定义宏(常用)
- __LINE__:在源代码中插入当前源代码行号;
- __FILE__:在源文件中插入当前源文件名;
- __DATE__:在源文件中插入当前的编译日期
- __TIME__:在源文件中插入当前编译时间;
- __STDC__:当要求程序严格遵循ANSI C标准时该标识被赋值为1;
- __cplusplus:当编写C++程序时该标识符被定义。
可以参照: