C/C++怎样通过预定义宏识别编译器名称和版本
来源:互联网 发布:查询域名对应的ip地址 编辑:程序博客网 时间:2024/05/17 03:06
怎样识别名称:
#if defined(__clang__)/* Clang/LLVM. ---------------------------------------------- */#elif defined(__ICC) || defined(__INTEL_COMPILER)/* Intel ICC/ICPC. ------------------------------------------ */#elif defined(__GNUC__) || defined(__GNUG__)/* GNU GCC/G++. --------------------------------------------- */#elif defined(__HP_cc) || defined(__HP_aCC)/* Hewlett-Packard C/aC++. ---------------------------------- */#elif defined(__IBMC__) || defined(__IBMCPP__)/* IBM XL C/C++. -------------------------------------------- */#elif defined(_MSC_VER)/* Microsoft Visual Studio. --------------------------------- */#elif defined(__PGI)/* Portland Group PGCC/PGCPP. ------------------------------- */#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)/* Oracle Solaris Studio. ----------------------------------- */#endif
编译器名称宏:
Compiler name macros Macro Clang/LLVM GNU GCC/G++ HP C/aC++ IBM XL C/C++ Intel ICC/ICPC Microsoft Visual Studio Oracle Solaris Studio Portland PGCC/PGCPP C C++ C C++ C C++ C C++ C C++ C C++ C C++ C C++ __clang__
yesyes__GNUC__
yesyesyesyes yesyes__GNUG__
yes yes yes__HP_aCC
yes__HP_cc
yes__IBMC__
yes__IBMCPP__
yes__ICC
yesyes__INTEL_COMPILER
yesyes_MSC_VER
yesyes__PGI
yesyes__SUNPRO_C
yes__SUNPRO_CC
yes
怎么识别编译器版本:
acro Clang/LLVM GNU GCC/G++ HP C/aC++ IBM XL C/C++ Intel ICC/ICPC Microsoft Visual Studio Oracle Solaris Studio Portland PGCC/PGCPP C C++ C C++ C C++ C C++ C C++ C C++ C C++ C C++ __clang_major__
yesyes__clang_minor__
yesyes__clang_patchlevel__
yesyes__clang_version__
yesyes__GNUC__
yesyesyesyes yesyes__GNUC_MINOR__
yesyesyesyes yesyes__GNUC_PATCHLEVEL__
yesyesyesyes yesyes__GNUG__
yes yes yes__HP_aCC
yes__HP_cc
yes__IBMC__
yes__IBMCPP__
yes__ICC
yesyes__INTEL_COMPILER
yesyes__INTEL_COMPILER_BUILD_DATE
yesyes_MSC_BUILD
yesyes_MSC_FULL_VER
yesyes_MSC_VER
yesyes__PGIC__
yesyes__PGIC_MINOR__
yesyes__PGIC_PATCHLEVEL__
yesyes__SUNPRO_C
yes__SUNPRO_CC
yes__VERSION__
yes yes yesyes yes__xlc__
yes__xlC__
yesyes__xlC_ver__
yesyes
0 0
- C/C++怎样通过预定义宏识别编译器名称和版本
- _MSC_VER[Microsoft C/C++编译器版本预定义宏]
- C语言编译器的预定义符号
- C语言编译器的预定义符号
- C/C++编译器预定宏使用
- C预定义宏
- C 预定义宏
- 编译器预定义宏__GNUC__和_MSC_VER
- 编译器预定义宏
- 编译器预定义宏
- c语言预定义宏
- c/c++预定义宏
- C 预定义的宏
- C标准预定义宏
- c/c++预定义宏
- C常用预定义宏
- C常用预定义宏
- C/C++预定义宏
- UVA - 10673 Play with Floor and Ceil(手动解方程)
- 探秘Java字符串桃花源
- 【HDU】2069 - Coin Change(暴力)
- web应用中普通java程序读取资源文件
- ATU 从新出发
- C/C++怎样通过预定义宏识别编译器名称和版本
- Xcode-block
- HTML5入门大二下暑假总结---1
- 安装vs2010并配置opencv2.4.11笔记【2016-8】
- leetcode No103. Binary Tree Zigzag Level Order Traversal
- UVA 10474 Where is the Marble
- httpServletResponse简概
- 2016多校训练Contest10: 1001 Median hdu5857
- linux文件交集差集