C/C++跨平台基础知识

各个平台的内置宏定义

  • Windows
    • WIN32_WIN32_WIN32_WIN64_WIN64_WIN64_
  • Android
    • ANDROID_ANDROID_
  • Linux
    • __linux__
  • iOS/Mac
    • __APPLE__TARGET_OS_IPHONETARGET_IPHONE_SIMULATORTARGET_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++程序时该标识符被定义。

可以参照:

https://blog.csdn.net/liangbch/article/details/36020391?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.compare&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.compare

猜你喜欢

转载自blog.csdn.net/gp18391818575/article/details/109636438