精华内容
下载资源
问答
  • Android ndk开发时查看编译器预定义宏

    千次阅读 2018-01-30 15:19:02
    Android ndk开发时查看编译器预定义宏 准备好c文件,命名为test.c,内容如下: int main(void) {} 找到ndk安装目录下的arm-linux-androideabi-gcc.exe,并切换到此目录下,如我的路径为: D:\Android\sdk\ndk-...

    Android ndk开发时查看编译器预定义宏

    1. 准备好c文件,命名为test.c,内容如下:
    int main(void) {}
    
    1. 找到ndk安装目录下的arm-linux-androideabi-gcc.exe,并切换到此目录下,如我的路径为:
    D:\Android\sdk\ndk-bundle\toolchains\arm-linux-androideabi-4.9\prebuilt\windows-x86_64\bin\arm-linux-androideabi-gcc.exe
    
    1. 执行命令:arm-linux-androideabi-gcc.exe -dM -E C:\Users\huweijian\Desktop\test.c
    2. 获得如下内容:
    #define __DBL_MIN_EXP__ (-1021)
    #define __HQ_FBIT__ 15
    #define __UINT_LEAST16_MAX__ 65535
    #define __ARM_SIZEOF_WCHAR_T 4
    #define __ATOMIC_ACQUIRE 2
    #define __SFRACT_IBIT__ 0
    #define __FLT_MIN__ 1.1754943508222875e-38F
    #define __GCC_IEC_559_COMPLEX 0
    #define __UFRACT_MAX__ 0XFFFFP-16UR
    #define __UINT_LEAST8_TYPE__ unsigned char
    #define __DQ_FBIT__ 63
    #define __INTMAX_C(c) c ## LL
    #define __ULFRACT_FBIT__ 32
    #define __SACCUM_EPSILON__ 0x1P-7HK
    #define __CHAR_BIT__ 8
    #define __USQ_IBIT__ 0
    #define __UINT8_MAX__ 255
    #define __ACCUM_FBIT__ 15
    #define __ANDROID__ 1
    #define __WINT_MAX__ 4294967295U
    #define __USFRACT_FBIT__ 8
    #define __ORDER_LITTLE_ENDIAN__ 1234
    #define __SIZE_MAX__ 4294967295U
    #define __ARM_ARCH_ISA_ARM 1
    #define __WCHAR_MAX__ 4294967295U
    #define __LACCUM_IBIT__ 32
    #define __DBL_DENORM_MIN__ ((double)4.9406564584124654e-324L)
    #define __GCC_ATOMIC_CHAR_LOCK_FREE 1
    #define __GCC_IEC_559 0
    #define __FLT_EVAL_METHOD__ 0
    #define __unix__ 1
    #define __LLACCUM_MAX__ 0X7FFFFFFFFFFFFFFFP-31LLK
    #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
    #define __FRACT_FBIT__ 15
    #define __UINT_FAST64_MAX__ 18446744073709551615ULL
    #define __SIG_ATOMIC_TYPE__ int
    #define __UACCUM_FBIT__ 16
    #define __DBL_MIN_10_EXP__ (-307)
    #define __FINITE_MATH_ONLY__ 0
    #define __ARMEL__ 1
    #define __LFRACT_IBIT__ 0
    #define __GNUC_PATCHLEVEL__ 0
    #define __LFRACT_MAX__ 0X7FFFFFFFP-31LR
    #define __UINT_FAST8_MAX__ 255
    #define __has_include(STR) __has_include__(STR)
    #define __DEC64_MAX_EXP__ 385
    #define __INT8_C(c) c
    #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
    #define __SA_FBIT__ 15
    #define __SHRT_MAX__ 32767
    #define __LDBL_MAX__ 1.7976931348623157e+308L
    #define __FRACT_MAX__ 0X7FFFP-15R
    #define __ARM_ARCH_5TE__ 1
    #define __UFRACT_FBIT__ 16
    #define __ARM_FP 12
    #define __UFRACT_MIN__ 0.0UR
    #define __UINT_LEAST8_MAX__ 255
    #define __GCC_ATOMIC_BOOL_LOCK_FREE 1
    #define __UINTMAX_TYPE__ long long unsigned int
    #define __LLFRACT_EPSILON__ 0x1P-63LLR
    #define __linux 1
    #define __DEC32_EPSILON__ 1E-6DF
    #define __CHAR_UNSIGNED__ 1
    #define __UINT32_MAX__ 4294967295U
    #define __ULFRACT_MAX__ 0XFFFFFFFFP-32ULR
    #define __TA_IBIT__ 64
    #define __LDBL_MAX_EXP__ 1024
    #define __WINT_MIN__ 0U
    #define __linux__ 1
    #define __ULLFRACT_MIN__ 0.0ULLR
    #define __SCHAR_MAX__ 127
    #define __WCHAR_MIN__ 0U
    #define __INT64_C(c) c ## LL
    #define __DBL_DIG__ 15
    #define __ARM_NEON_FP 4
    #define __GCC_ATOMIC_POINTER_LOCK_FREE 1
    #define __LLACCUM_MIN__ (-0X1P31LLK-0X1P31LLK)
    #define __SIZEOF_INT__ 4
    #define __SIZEOF_POINTER__ 4
    #define __USACCUM_IBIT__ 8
    #define __USER_LABEL_PREFIX__
    #define __STDC_HOSTED__ 1
    #define __LDBL_HAS_INFINITY__ 1
    #define __LFRACT_MIN__ (-0.5LR-0.5LR)
    #define __HA_IBIT__ 8
    #define __TQ_IBIT__ 0
    #define __FLT_EPSILON__ 1.1920928955078125e-7F
    #define __APCS_32__ 1
    #define __USFRACT_IBIT__ 0
    #define __LDBL_MIN__ 2.2250738585072014e-308L
    #define __FRACT_MIN__ (-0.5R-0.5R)
    #define __DEC32_MAX__ 9.999999E96DF
    #define __DA_IBIT__ 32
    #define __ARM_SIZEOF_MINIMAL_ENUM 4
    #define __INT32_MAX__ 2147483647
    #define __UQQ_FBIT__ 8
    #define __SIZEOF_LONG__ 4
    #define __UACCUM_MAX__ 0XFFFFFFFFP-16UK
    #define __UINT16_C(c) c
    #define __DECIMAL_DIG__ 17
    #define __LFRACT_EPSILON__ 0x1P-31LR
    #define __ULFRACT_MIN__ 0.0ULR
    #define __has_include_next(STR) __has_include_next__(STR)
    #define __LDBL_HAS_QUIET_NAN__ 1
    #define __ULACCUM_IBIT__ 32
    #define __UACCUM_EPSILON__ 0x1P-16UK
    #define __GNUC__ 4
    #define __ULLACCUM_MAX__ 0XFFFFFFFFFFFFFFFFP-32ULLK
    #define __HQ_IBIT__ 0
    #define __FLT_HAS_DENORM__ 1
    #define __SIZEOF_LONG_DOUBLE__ 8
    #define __BIGGEST_ALIGNMENT__ 8
    #define __DQ_IBIT__ 0
    #define __DBL_MAX__ ((double)1.7976931348623157e+308L)
    #define __ULFRACT_IBIT__ 0
    #define __INT_FAST32_MAX__ 2147483647
    #define __DBL_HAS_INFINITY__ 1
    #define __ACCUM_IBIT__ 16
    #define __DEC32_MIN_EXP__ (-94)
    #define __THUMB_INTERWORK__ 1
    #define __LACCUM_MAX__ 0X7FFFFFFFFFFFFFFFP-31LK
    #define __INT_FAST16_TYPE__ int
    #define __LDBL_HAS_DENORM__ 1
    #define __DEC128_MAX__ 9.999999999999999999999999999999999E6144DL
    #define __INT_LEAST32_MAX__ 2147483647
    #define __ARM_PCS 1
    #define __DEC32_MIN__ 1E-95DF
    #define __ACCUM_MAX__ 0X7FFFFFFFP-15K
    #define __DBL_MAX_EXP__ 1024
    #define __USACCUM_EPSILON__ 0x1P-8UHK
    #define __DEC128_EPSILON__ 1E-33DL
    #define __SFRACT_MAX__ 0X7FP-7HR
    #define __FRACT_IBIT__ 0
    #define __PTRDIFF_MAX__ 2147483647
    #define __UACCUM_MIN__ 0.0UK
    #define __UACCUM_IBIT__ 16
    #define __LONG_LONG_MAX__ 9223372036854775807LL
    #define __SIZEOF_SIZE_T__ 4
    #define __ULACCUM_MAX__ 0XFFFFFFFFFFFFFFFFP-32ULK
    #define __SIZEOF_WINT_T__ 4
    #define __SA_IBIT__ 16
    #define __ULLACCUM_MIN__ 0.0ULLK
    #define __GXX_ABI_VERSION 999999
    #define __UTA_FBIT__ 64
    #define __SOFTFP__ 1
    #define __FLT_MIN_EXP__ (-125)
    #define __USFRACT_MAX__ 0XFFP-8UHR
    #define __UFRACT_IBIT__ 0
    #define __ARM_FEATURE_QBIT 1
    #define __INT_FAST64_TYPE__ long long int
    #define __DBL_MIN__ ((double)2.2250738585072014e-308L)
    #define __LACCUM_MIN__ (-0X1P31LK-0X1P31LK)
    #define __ULLACCUM_FBIT__ 32
    #define __GXX_TYPEINFO_EQUALITY_INLINE 0
    #define __ULLFRACT_EPSILON__ 0x1P-64ULLR
    #define __DEC128_MIN__ 1E-6143DL
    #define __REGISTER_PREFIX__
    #define __UINT16_MAX__ 65535
    #define __DBL_HAS_DENORM__ 1
    #define __ACCUM_MIN__ (-0X1P15K-0X1P15K)
    #define __SQ_IBIT__ 0
    #define __UINT8_TYPE__ unsigned char
    #define __UHA_FBIT__ 8
    #define __NO_INLINE__ 1
    #define __SFRACT_MIN__ (-0.5HR-0.5HR)
    #define __UTQ_FBIT__ 128
    #define __FLT_MANT_DIG__ 24
    #define __VERSION__ "4.9.x 20150123 (prerelease)"
    #define __UINT64_C(c) c ## ULL
    #define __ULLFRACT_FBIT__ 64
    #define __FRACT_EPSILON__ 0x1P-15R
    #define __ULACCUM_MIN__ 0.0ULK
    #define __UDA_FBIT__ 32
    #define __LLACCUM_EPSILON__ 0x1P-31LLK
    #define __GCC_ATOMIC_INT_LOCK_FREE 1
    #define __FLOAT_WORD_ORDER__ __ORDER_LITTLE_ENDIAN__
    #define __USFRACT_MIN__ 0.0UHR
    #define __UQQ_IBIT__ 0
    #define __INT32_C(c) c
    #define __DEC64_EPSILON__ 1E-15DD
    #define __ORDER_PDP_ENDIAN__ 3412
    #define __DEC128_MIN_EXP__ (-6142)
    #define __UHQ_FBIT__ 16
    #define __LLACCUM_FBIT__ 31
    #define __INT_FAST32_TYPE__ int
    #define __UINT_LEAST16_TYPE__ short unsigned int
    #define unix 1
    #define __INT16_MAX__ 32767
    #define __SIZE_TYPE__ unsigned int
    #define __UINT64_MAX__ 18446744073709551615ULL
    #define __UDQ_FBIT__ 64
    #define __INT8_TYPE__ signed char
    #define __ELF__ 1
    #define __ULFRACT_EPSILON__ 0x1P-32ULR
    #define __LLFRACT_FBIT__ 63
    #define __FLT_RADIX__ 2
    #define __INT_LEAST16_TYPE__ short int
    #define __LDBL_EPSILON__ 2.2204460492503131e-16L
    #define __UINTMAX_C(c) c ## ULL
    #define __SACCUM_MAX__ 0X7FFFP-7HK
    #define __SIG_ATOMIC_MAX__ 2147483647
    #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
    #define __VFP_FP__ 1
    #define __SIZEOF_PTRDIFF_T__ 4
    #define __LACCUM_EPSILON__ 0x1P-31LK
    #define __DEC32_SUBNORMAL_MIN__ 0.000001E-95DF
    #define __INT_FAST16_MAX__ 2147483647
    #define __UINT_FAST32_MAX__ 4294967295U
    #define __UINT_LEAST64_TYPE__ long long unsigned int
    #define __USACCUM_MAX__ 0XFFFFP-8UHK
    #define __SFRACT_EPSILON__ 0x1P-7HR
    #define __FLT_HAS_QUIET_NAN__ 1
    #define __FLT_MAX_10_EXP__ 38
    #define __LONG_MAX__ 2147483647L
    #define __DEC128_SUBNORMAL_MIN__ 0.000000000000000000000000000000001E-6143DL
    #define __FLT_HAS_INFINITY__ 1
    #define __unix 1
    #define __USA_FBIT__ 16
    #define __UINT_FAST16_TYPE__ unsigned int
    #define __DEC64_MAX__ 9.999999999999999E384DD
    #define __ARM_32BIT_STATE 1
    #define __CHAR16_TYPE__ short unsigned int
    #define __PRAGMA_REDEFINE_EXTNAME 1
    #define __INT_LEAST16_MAX__ 32767
    #define __DEC64_MANT_DIG__ 16
    #define __INT64_MAX__ 9223372036854775807LL
    #define __UINT_LEAST32_MAX__ 4294967295U
    #define __SACCUM_FBIT__ 7
    #define __GCC_ATOMIC_LONG_LOCK_FREE 1
    #define __INT_LEAST64_TYPE__ long long int
    #define __ARM_FEATURE_CLZ 1
    #define __INT16_TYPE__ short int
    #define __INT_LEAST8_TYPE__ signed char
    #define __SQ_FBIT__ 31
    #define __DEC32_MAX_EXP__ 97
    #define __ARM_ARCH_ISA_THUMB 1
    #define __INT_FAST8_MAX__ 127
    #define __ARM_ARCH 5
    #define __INTPTR_MAX__ 2147483647
    #define __QQ_FBIT__ 7
    #define linux 1
    #define __UTA_IBIT__ 64
    #define __LDBL_MANT_DIG__ 53
    #define __SFRACT_FBIT__ 7
    #define __SACCUM_MIN__ (-0X1P7HK-0X1P7HK)
    #define __DBL_HAS_QUIET_NAN__ 1
    #define __SIG_ATOMIC_MIN__ (-__SIG_ATOMIC_MAX__ - 1)
    #define __INTPTR_TYPE__ int
    #define __UINT16_TYPE__ short unsigned int
    #define __WCHAR_TYPE__ unsigned int
    #define __SIZEOF_FLOAT__ 4
    #define __USQ_FBIT__ 32
    #define __pic__ 1
    #define __UINTPTR_MAX__ 4294967295U
    #define __DEC64_MIN_EXP__ (-382)
    #define __ULLACCUM_IBIT__ 32
    #define __INT_FAST64_MAX__ 9223372036854775807LL
    #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
    #define __FLT_DIG__ 6
    #define __UINT_FAST64_TYPE__ long long unsigned int
    #define __INT_MAX__ 2147483647
    #define __LACCUM_FBIT__ 31
    #define __USACCUM_MIN__ 0.0UHK
    #define __UHA_IBIT__ 8
    #define __INT64_TYPE__ long long int
    #define __FLT_MAX_EXP__ 128
    #define __UTQ_IBIT__ 0
    #define __DBL_MANT_DIG__ 53
    #define __INT_LEAST64_MAX__ 9223372036854775807LL
    #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
    #define __DEC64_MIN__ 1E-383DD
    #define __WINT_TYPE__ unsigned int
    #define __UINT_LEAST32_TYPE__ unsigned int
    #define __SIZEOF_SHORT__ 2
    #define __ULLFRACT_IBIT__ 0
    #define __LDBL_MIN_EXP__ (-1021)
    #define __arm__ 1
    #define __UDA_IBIT__ 32
    #define __INT_LEAST8_MAX__ 127
    #define __LFRACT_FBIT__ 31
    #define __LDBL_MAX_10_EXP__ 308
    #define __ATOMIC_RELAXED 0
    #define __DBL_EPSILON__ ((double)2.2204460492503131e-16L)
    #define __UINT8_C(c) c
    #define __INT_LEAST32_TYPE__ int
    #define __SIZEOF_WCHAR_T__ 4
    #define __UINT64_TYPE__ long long unsigned int
    #define __LLFRACT_MAX__ 0X7FFFFFFFFFFFFFFFP-63LLR
    #define __TQ_FBIT__ 127
    #define __INT_FAST8_TYPE__ signed char
    #define __ULLACCUM_EPSILON__ 0x1P-32ULLK
    #define __UHQ_IBIT__ 0
    #define __LLACCUM_IBIT__ 32
    #define __DBL_DECIMAL_DIG__ 17
    #define __DEC_EVAL_METHOD__ 2
    #define __TA_FBIT__ 63
    #define __UDQ_IBIT__ 0
    #define __ORDER_BIG_ENDIAN__ 4321
    #define __ACCUM_EPSILON__ 0x1P-15K
    #define __UINT32_C(c) c ## U
    #define __INTMAX_MAX__ 9223372036854775807LL
    #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
    #define __FLT_DENORM_MIN__ 1.4012984643248171e-45F
    #define __LLFRACT_IBIT__ 0
    #define __INT8_MAX__ 127
    #define __PIC__ 1
    #define __UINT_FAST32_TYPE__ unsigned int
    #define __CHAR32_TYPE__ unsigned int
    #define __FLT_MAX__ 3.4028234663852886e+38F
    #define __USACCUM_FBIT__ 8
    #define __INT32_TYPE__ int
    #define __SIZEOF_DOUBLE__ 8
    #define __FLT_MIN_10_EXP__ (-37)
    #define __UFRACT_EPSILON__ 0x1P-16UR
    #define __INTMAX_TYPE__ long long int
    #define __DEC128_MAX_EXP__ 6145
    #define __ATOMIC_CONSUME 1
    #define __GNUC_MINOR__ 9
    #define __UINTMAX_MAX__ 18446744073709551615ULL
    #define __DEC32_MANT_DIG__ 7
    #define __HA_FBIT__ 7
    #define __DBL_MAX_10_EXP__ 308
    #define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
    #define __INT16_C(c) c
    #define __STDC__ 1
    #define __PTRDIFF_TYPE__ int
    #define __LLFRACT_MIN__ (-0.5LLR-0.5LLR)
    #define __ATOMIC_SEQ_CST 5
    #define __DA_FBIT__ 31
    #define __UINT32_TYPE__ unsigned int
    #define __UINTPTR_TYPE__ unsigned int
    #define __USA_IBIT__ 16
    #define __DEC64_SUBNORMAL_MIN__ 0.000000000000001E-383DD
    #define __ARM_EABI__ 1
    #define __DEC128_MANT_DIG__ 34
    #define __LDBL_MIN_10_EXP__ (-307)
    #define __SIZEOF_LONG_LONG__ 8
    #define __ULACCUM_EPSILON__ 0x1P-32ULK
    #define __SACCUM_IBIT__ 8
    #define __GCC_ATOMIC_LLONG_LOCK_FREE 1
    #define __LDBL_DIG__ 15
    #define __FLT_DECIMAL_DIG__ 9
    #define __UINT_FAST16_MAX__ 4294967295U
    #define __GNUC_GNU_INLINE__ 1
    #define __GCC_ATOMIC_SHORT_LOCK_FREE 1
    #define __ULLFRACT_MAX__ 0XFFFFFFFFFFFFFFFFP-64ULLR
    #define __UINT_FAST8_TYPE__ unsigned char
    #define __USFRACT_EPSILON__ 0x1P-8UHR
    #define __ULACCUM_FBIT__ 32
    #define __ARM_FEATURE_DSP 1
    #define __QQ_IBIT__ 0
    #define __ATOMIC_ACQ_REL 4
    #define __ATOMIC_RELEASE 3
    

    参考

    http://blog.sina.com.cn/s/blog_4a0a39c30100f6e8.html

    展开全文
  • 查看编译器预定义宏

    千次阅读 2012-06-04 11:35:57
    Linux下,可以用下面的命令查看预定义宏: touch a.h # 创建一个空文件 cpp -dM a.h # 查看预定义宏 2. 使用c语言写程序时,通常使用大量的宏来简化程序编写,使得程序看起来更加简洁。但是有时候编译...
    1.
    在Windows下,在VS的工程属性中,可以查看预定义宏,例如有WIN32这样的宏。

    在Linux下,可以用下面的命令查看预定义宏:

    touch a.h   # 创建一个空文件
    cpp -dM a.h   #  查看预定义宏

    2.
    使用c语言写程序时,通常使用大量的宏来简化程序编写,使得程序看起来更加简洁。但是有时候编译程序时,提示在宏的地方出错,如何查看宏替换后的结果呢?很简单的办法是在gcc的option里面加入-save-temps选项,gcc编译程序时会在当前目录下产生一个*.i或者*.ii的文件,查看这个文件就知道宏替换后的结果。

    3.
        gcc -E选项可以查看预编译结果,同样在VC下,把C/C++-》预处理器-》生成预处理文件 勾上也可以,但是你rebuild时会发现报一个Link错误说找不到stdafx.obj文件,这很正常,不要惊慌,VC只做了预处理,所以自然没有.obj文件,只不过它的连接器不应该报这个错罢了,在.cpp的同目录下可以找到对应的.i文件。展开前,建议把系统头文件注掉,不然结果文件很大很大,你不知道你想看的部分展开在哪了。
    展开全文
  • 我们在阅读一些源代码时经常发现类似这样的宏WIN32,_WIN64,__x86_64,__linux却找不到在哪里定义的,这些其实是编译器预定义的宏。在不同的操作系统内容不同。 为了知道gcc编译器都预定义了哪些宏, 在window下可以...

    我们在阅读一些源代码时经常发现类似这样的宏WIN32,_WIN64,__x86_64,__linux却找不到在哪里定义的,这些其实是编译器预定义的宏。在不同的操作系统内容不同。
    为了知道gcc编译器都预定义了哪些宏,
    在window下可以输入如下命令:

    gcc -posix -E -dM - < nul

    linux下,命令稍有不同

    gcc -posix -E -dM - < /dev/null

    这是windows下gcc(mingw)的输出结果

    #define __DBL_MIN_EXP__ (-1021)
    #define __UINT_LEAST16_MAX__ 0xffff
    #define __ATOMIC_ACQUIRE 2
    #define __FLT_MIN__ 1.17549435082228750797e-38F
    #define __GCC_IEC_559_COMPLEX 2
    #define __UINT_LEAST8_TYPE__ unsigned char
    #define __SIZEOF_FLOAT80__ 16
    #define _WIN32 1
    #define __INTMAX_C(c) c ## LL
    #define __CHAR_BIT__ 8
    #define __UINT8_MAX__ 0xff
    #define _WIN64 1
    #define __WINT_MAX__ 0xffff
    #define __ORDER_LITTLE_ENDIAN__ 1234
    #define __SIZE_MAX__ 0xffffffffffffffffULL
    #define __WCHAR_MAX__ 0xffff
    #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1
    #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1
    #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1
    #define __DBL_DENORM_MIN__ ((double)4.94065645841246544177e-324L)
    #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 1
    #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
    #define __GCC_IEC_559 2
    #define __FLT_EVAL_METHOD__ 0
    #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
    #define __x86_64 1
    #define __UINT_FAST64_MAX__ 0xffffffffffffffffULL
    #define __SIG_ATOMIC_TYPE__ int
    #define __DBL_MIN_10_EXP__ (-307)
    #define __FINITE_MATH_ONLY__ 0
    #define __GNUC_PATCHLEVEL__ 0
    #define __UINT_FAST8_MAX__ 0xff
    #define __has_include(STR) __has_include__(STR)
    #define _stdcall __attribute__((__stdcall__))
    #define __DEC64_MAX_EXP__ 385
    #define __INT8_C(c) c
    #define __UINT_LEAST64_MAX__ 0xffffffffffffffffULL
    #define __SHRT_MAX__ 0x7fff
    #define __LDBL_MAX__ 1.18973149535723176502e+4932L
    #define __UINT_LEAST8_MAX__ 0xff
    #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
    #define __UINTMAX_TYPE__ long long unsigned int
    #define __DEC32_EPSILON__ 1E-6DF
    #define __UINT32_MAX__ 0xffffffffU
    #define __LDBL_MAX_EXP__ 16384
    #define __WINT_MIN__ 0
    #define __SCHAR_MAX__ 0x7f
    #define __WCHAR_MIN__ 0
    #define __INT64_C(c) c ## LL
    #define __DBL_DIG__ 15
    #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
    #define _POSIX_SOURCE 1
    #define __SIZEOF_INT__ 4
    #define __SIZEOF_POINTER__ 8
    #define __USER_LABEL_PREFIX__ 
    #define __STDC_HOSTED__ 1
    #define __WIN32 1
    #define __LDBL_HAS_INFINITY__ 1
    #define __WIN64 1
    #define __FLT_EPSILON__ 1.19209289550781250000e-7F
    #define __LDBL_MIN__ 3.36210314311209350626e-4932L
    #define __STDC_UTF_16__ 1
    #define __DEC32_MAX__ 9.999999E96DF
    #define __MINGW32__ 1
    #define __INT32_MAX__ 0x7fffffff
    #define __SIZEOF_LONG__ 4
    #define __UINT16_C(c) c
    #define __DECIMAL_DIG__ 21
    #define __has_include_next(STR) __has_include_next__(STR)
    #define __LDBL_HAS_QUIET_NAN__ 1
    #define _REENTRANT 1
    #define __GNUC__ 5
    #define _cdecl __attribute__((__cdecl__))
    #define __MMX__ 1
    #define __FLT_HAS_DENORM__ 1
    #define __SIZEOF_LONG_DOUBLE__ 16
    #define __BIGGEST_ALIGNMENT__ 16
    #define __DBL_MAX__ ((double)1.79769313486231570815e+308L)
    #define _thiscall __attribute__((__thiscall__))
    #define __INT_FAST32_MAX__ 0x7fffffff
    #define __WINNT 1
    #define __DBL_HAS_INFINITY__ 1
    #define __WINNT__ 1
    #define __DEC32_MIN_EXP__ (-94)
    #define __INT_FAST16_TYPE__ short int
    #define _fastcall __attribute__((__fastcall__))
    #define __LDBL_HAS_DENORM__ 1
    #define __DEC128_MAX__ 9.999999999999999999999999999999999E6144DL
    #define __INT_LEAST32_MAX__ 0x7fffffff
    #define __DEC32_MIN__ 1E-95DF
    #define __DBL_MAX_EXP__ 1024
    #define __DEC128_EPSILON__ 1E-33DL
    #define __SSE2_MATH__ 1
    #define __ATOMIC_HLE_RELEASE 131072
    #define __WIN32__ 1
    #define __PTRDIFF_MAX__ 0x7fffffffffffffffLL
    #define __amd64 1
    #define __tune_core2__ 1
    #define __ATOMIC_HLE_ACQUIRE 65536
    #define __LONG_LONG_MAX__ 0x7fffffffffffffffLL
    #define __SIZEOF_SIZE_T__ 8
    #define __SIZEOF_WINT_T__ 2
    #define __GXX_ABI_VERSION 1009
    #define __FLT_MIN_EXP__ (-125)
    #define __INT_FAST64_TYPE__ long long int
    #define __DBL_MIN__ ((double)2.22507385850720138309e-308L)
    #define __DECIMAL_BID_FORMAT__ 1
    #define __GXX_TYPEINFO_EQUALITY_INLINE 0
    #define __DEC128_MIN__ 1E-6143DL
    #define __REGISTER_PREFIX__ 
    #define __UINT16_MAX__ 0xffff
    #define __DBL_HAS_DENORM__ 1
    #define __cdecl __attribute__((__cdecl__))
    #define __UINT8_TYPE__ unsigned char
    #define __NO_INLINE__ 1
    #define __FLT_MANT_DIG__ 24
    #define __VERSION__ "5.2.0"
    #define __UINT64_C(c) c ## ULL
    #define __GCC_ATOMIC_INT_LOCK_FREE 2
    #define __FLOAT_WORD_ORDER__ __ORDER_LITTLE_ENDIAN__
    #define __INT32_C(c) c
    #define __DEC64_EPSILON__ 1E-15DD
    #define __ORDER_PDP_ENDIAN__ 3412
    #define __DEC128_MIN_EXP__ (-6142)
    #define __INT_FAST32_TYPE__ int
    #define __UINT_LEAST16_TYPE__ short unsigned int
    #define __INT16_MAX__ 0x7fff
    #define __SIZE_TYPE__ long long unsigned int
    #define __UINT64_MAX__ 0xffffffffffffffffULL
    #define __INT8_TYPE__ signed char
    #define __FLT_RADIX__ 2
    #define __INT_LEAST16_TYPE__ short int
    #define __LDBL_EPSILON__ 1.08420217248550443401e-19L
    #define __UINTMAX_C(c) c ## ULL
    #define __SSE_MATH__ 1
    #define __SEH__ 1
    #define __SIG_ATOMIC_MAX__ 0x7fffffff
    #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
    #define __SIZEOF_PTRDIFF_T__ 8
    #define __x86_64__ 1
    #define __DEC32_SUBNORMAL_MIN__ 0.000001E-95DF
    #define __MSVCRT__ 1
    #define __INT_FAST16_MAX__ 0x7fff
    #define __UINT_FAST32_MAX__ 0xffffffffU
    #define __UINT_LEAST64_TYPE__ long long unsigned int
    #define __FLT_HAS_QUIET_NAN__ 1
    #define __FLT_MAX_10_EXP__ 38
    #define __LONG_MAX__ 0x7fffffffL
    #define __DEC128_SUBNORMAL_MIN__ 0.000000000000000000000000000000001E-6143DL
    #define __FLT_HAS_INFINITY__ 1
    #define __UINT_FAST16_TYPE__ short unsigned int
    #define __DEC64_MAX__ 9.999999999999999E384DD
    #define __CHAR16_TYPE__ short unsigned int
    #define __PRAGMA_REDEFINE_EXTNAME 1
    #define __INT_LEAST16_MAX__ 0x7fff
    #define __DEC64_MANT_DIG__ 16
    #define __INT64_MAX__ 0x7fffffffffffffffLL
    #define __UINT_LEAST32_MAX__ 0xffffffffU
    #define __GCC_ATOMIC_LONG_LOCK_FREE 2
    #define __INT_LEAST64_TYPE__ long long int
    #define __INT16_TYPE__ short int
    #define __INT_LEAST8_TYPE__ signed char
    #define __STDC_VERSION__ 201112L
    #define __DEC32_MAX_EXP__ 97
    #define __INT_FAST8_MAX__ 0x7f
    #define __INTPTR_MAX__ 0x7fffffffffffffffLL
    #define __GXX_MERGED_TYPEINFO_NAMES 0
    #define __stdcall __attribute__((__stdcall__))
    #define __SSE2__ 1
    #define __LDBL_MANT_DIG__ 64
    #define __DBL_HAS_QUIET_NAN__ 1
    #define __SIG_ATOMIC_MIN__ (-__SIG_ATOMIC_MAX__ - 1)
    #define __INTPTR_TYPE__ long long int
    #define __UINT16_TYPE__ short unsigned int
    #define __WCHAR_TYPE__ short unsigned int
    #define __SIZEOF_FLOAT__ 4
    #define __pic__ 1
    #define __UINTPTR_MAX__ 0xffffffffffffffffULL
    #define __DEC64_MIN_EXP__ (-382)
    #define __INT_FAST64_MAX__ 0x7fffffffffffffffLL
    #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
    #define __FLT_DIG__ 6
    #define __UINT_FAST64_TYPE__ long long unsigned int
    #define __INT_MAX__ 0x7fffffff
    #define __amd64__ 1
    #define WIN32 1
    #define __nocona 1
    #define __code_model_medium__ 1
    #define __INT64_TYPE__ long long int
    #define __FLT_MAX_EXP__ 128
    #define WIN64 1
    #define __ORDER_BIG_ENDIAN__ 4321
    #define __DBL_MANT_DIG__ 53
    #define __SIZEOF_FLOAT128__ 16
    #define __INT_LEAST64_MAX__ 0x7fffffffffffffffLL
    #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
    #define __DEC64_MIN__ 1E-383DD
    #define __WINT_TYPE__ short unsigned int
    #define __UINT_LEAST32_TYPE__ unsigned int
    #define __SIZEOF_SHORT__ 2
    #define __SSE__ 1
    #define __LDBL_MIN_EXP__ (-16381)
    #define __INT_LEAST8_MAX__ 0x7f
    #define __SIZEOF_INT128__ 16
    #define __LDBL_MAX_10_EXP__ 4932
    #define __ATOMIC_RELAXED 0
    #define __DBL_EPSILON__ ((double)2.22044604925031308085e-16L)
    #define __thiscall __attribute__((__thiscall__))
    #define __UINT8_C(c) c
    #define __INT_LEAST32_TYPE__ int
    #define __SIZEOF_WCHAR_T__ 2
    #define __UINT64_TYPE__ long long unsigned int
    #define __INT_FAST8_TYPE__ signed char
    #define __fastcall __attribute__((__fastcall__))
    #define __GNUC_STDC_INLINE__ 1
    #define __DBL_DECIMAL_DIG__ 17
    #define __STDC_UTF_32__ 1
    #define __FXSR__ 1
    #define __DEC_EVAL_METHOD__ 2
    #define __MINGW64__ 1
    #define __UINT32_C(c) c ## U
    #define __INTMAX_MAX__ 0x7fffffffffffffffLL
    #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
    #define WINNT 1
    #define __FLT_DENORM_MIN__ 1.40129846432481707092e-45F
    #define __INT8_MAX__ 0x7f
    #define __PIC__ 1
    #define __UINT_FAST32_TYPE__ unsigned int
    #define __CHAR32_TYPE__ unsigned int
    #define __FLT_MAX__ 3.40282346638528859812e+38F
    #define __INT32_TYPE__ int
    #define __SIZEOF_DOUBLE__ 8
    #define __FLT_MIN_10_EXP__ (-37)
    #define __INTMAX_TYPE__ long long int
    #define _INTEGRAL_MAX_BITS 64
    #define __DEC128_MAX_EXP__ 6145
    #define __ATOMIC_CONSUME 1
    #define __nocona__ 1
    #define __GNUC_MINOR__ 2
    #define __UINTMAX_MAX__ 0xffffffffffffffffULL
    #define __DEC32_MANT_DIG__ 7
    #define __DBL_MAX_10_EXP__ 308
    #define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
    #define __INT16_C(c) c
    #define __STDC__ 1
    #define __PTRDIFF_TYPE__ long long int
    #define __ATOMIC_SEQ_CST 5
    #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 1
    #define __UINT32_TYPE__ unsigned int
    #define __UINTPTR_TYPE__ long long unsigned int
    #define __DEC64_SUBNORMAL_MIN__ 0.000000000000001E-383DD
    #define __DEC128_MANT_DIG__ 34
    #define __LDBL_MIN_10_EXP__ (-4931)
    #define __SIZEOF_LONG_LONG__ 8
    #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
    #define __LDBL_DIG__ 18
    #define __FLT_DECIMAL_DIG__ 9
    #define __UINT_FAST16_MAX__ 0xffff
    #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
    #define __SSE3__ 1
    #define __UINT_FAST8_TYPE__ unsigned char
    #define __WIN64__ 1
    #define __ATOMIC_ACQ_REL 4
    #define __ATOMIC_RELEASE 3
    #define __declspec(x) __attribute__((x))
    

    这是linux下的输出结果

    
    #define __DBL_MIN_EXP__ (-1021)
    #define __FLT_MIN__ 1.17549435e-38F
    #define __CHAR_BIT__ 8
    #define __WCHAR_MAX__ 2147483647
    #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1
    #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1
    #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1
    #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
    #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 1
    #define __FLT_EVAL_METHOD__ 0
    #define __unix__ 1
    #define __x86_64 1
    #define __DBL_MIN_10_EXP__ (-307)
    #define __FINITE_MATH_ONLY__ 0
    #define __GNUC_PATCHLEVEL__ 7
    #define __DEC64_MAX_EXP__ 385
    #define __SHRT_MAX__ 32767
    #define __LDBL_MAX__ 1.18973149535723176502e+4932L
    #define __UINTMAX_TYPE__ long unsigned int
    #define __linux 1
    #define __DEC32_EPSILON__ 1E-6DF
    #define __unix 1
    #define __LDBL_MAX_EXP__ 16384
    #define __linux__ 1
    #define __SCHAR_MAX__ 127
    #define __DBL_DIG__ 15
    #define _POSIX_SOURCE 1
    #define __SIZEOF_INT__ 4
    #define __SIZEOF_POINTER__ 8
    #define __USER_LABEL_PREFIX__
    #define __STDC_HOSTED__ 1
    #define __LDBL_HAS_INFINITY__ 1
    #define __FLT_EPSILON__ 1.19209290e-7F
    #define __LDBL_MIN__ 3.36210314311209350626e-4932L
    #define __DEC32_MAX__ 9.999999E96DF
    #define __SIZEOF_LONG__ 8
    #define __DECIMAL_DIG__ 21
    #define __gnu_linux__ 1
    #define __LDBL_HAS_QUIET_NAN__ 1
    #define __GNUC__ 4
    #define __MMX__ 1
    #define __FLT_HAS_DENORM__ 1
    #define __SIZEOF_LONG_DOUBLE__ 16
    #define __BIGGEST_ALIGNMENT__ 16
    #define __DBL_MAX__ 1.7976931348623157e+308
    #define __DBL_HAS_INFINITY__ 1
    #define __DEC32_MIN_EXP__ (-94)
    #define __LDBL_HAS_DENORM__ 1
    #define __DEC128_MAX__ 9.999999999999999999999999999999999E6144DL
    #define __DEC32_MIN__ 1E-95DF
    #define __DBL_MAX_EXP__ 1024
    #define __DEC128_EPSILON__ 1E-33DL
    #define __SSE2_MATH__ 1
    #define __amd64 1
    #define __LONG_LONG_MAX__ 9223372036854775807LL
    #define __SIZEOF_SIZE_T__ 8
    #define __SIZEOF_WINT_T__ 4
    #define __GCC_HAVE_DWARF2_CFI_ASM 1
    #define __GXX_ABI_VERSION 1002
    #define __FLT_MIN_EXP__ (-125)
    #define __DBL_MIN__ 2.2250738585072014e-308
    #define __LP64__ 1
    #define __DECIMAL_BID_FORMAT__ 1
    #define __DEC128_MIN__ 1E-6143DL
    #define __REGISTER_PREFIX__
    #define __DBL_HAS_DENORM__ 1
    #define __NO_INLINE__ 1
    #define __FLT_MANT_DIG__ 24
    #define __VERSION__ "4.4.7 20120313 (Red Hat 4.4.7-11)"
    #define __DEC64_EPSILON__ 1E-15DD
    #define __DEC128_MIN_EXP__ (-6142)
    #define unix 1
    #define __SIZE_TYPE__ long unsigned int
    #define __ELF__ 1
    #define __FLT_RADIX__ 2
    #define __LDBL_EPSILON__ 1.08420217248550443401e-19L
    #define __GNUC_RH_RELEASE__ 11
    #define __SSE_MATH__ 1
    #define __k8 1
    #define __SIZEOF_PTRDIFF_T__ 8
    #define __x86_64__ 1
    #define __DEC32_SUBNORMAL_MIN__ 0.000001E-95DF
    #define __FLT_HAS_QUIET_NAN__ 1
    #define __FLT_MAX_10_EXP__ 38
    #define __LONG_MAX__ 9223372036854775807L
    #define __DEC128_SUBNORMAL_MIN__ 0.000000000000000000000000000000001E-6143DL
    #define __FLT_HAS_INFINITY__ 1
    #define __DEC64_MAX__ 9.999999999999999E384DD
    #define __CHAR16_TYPE__ short unsigned int
    #define __DEC64_MANT_DIG__ 16
    #define __DEC32_MAX_EXP__ 97
    #define linux 1
    #define __SSE2__ 1
    #define __LDBL_MANT_DIG__ 64
    #define __DBL_HAS_QUIET_NAN__ 1
    #define __k8__ 1
    #define __WCHAR_TYPE__ int
    #define __SIZEOF_FLOAT__ 4
    #define __DEC64_MIN_EXP__ (-382)
    #define __FLT_DIG__ 6
    #define __INT_MAX__ 2147483647
    #define __amd64__ 1
    #define __FLT_MAX_EXP__ 128
    #define __DBL_MANT_DIG__ 53
    #define __DEC64_MIN__ 1E-383DD
    #define __WINT_TYPE__ unsigned int
    #define __SIZEOF_SHORT__ 2
    #define __SSE__ 1
    #define __LDBL_MIN_EXP__ (-16381)
    #define __LDBL_MAX_10_EXP__ 4932
    #define __DBL_EPSILON__ 2.2204460492503131e-16
    #define _LP64 1
    #define __SIZEOF_WCHAR_T__ 4
    #define __DEC_EVAL_METHOD__ 2
    #define __INTMAX_MAX__ 9223372036854775807L
    #define __FLT_DENORM_MIN__ 1.40129846e-45F
    #define __CHAR32_TYPE__ unsigned int
    #define __FLT_MAX__ 3.40282347e+38F
    #define __SIZEOF_DOUBLE__ 8
    #define __FLT_MIN_10_EXP__ (-37)
    #define __INTMAX_TYPE__ long int
    #define __DEC128_MAX_EXP__ 6145
    #define __GNUC_MINOR__ 4
    #define __DEC32_MANT_DIG__ 7
    #define __DBL_MAX_10_EXP__ 308
    #define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
    #define __STDC__ 1
    #define __PTRDIFF_TYPE__ long int
    #define __DEC64_SUBNORMAL_MIN__ 0.000000000000001E-383DD
    #define __DEC128_MANT_DIG__ 34
    #define __LDBL_MIN_10_EXP__ (-4931)
    #define __SIZEOF_LONG_LONG__ 8
    #define __LDBL_DIG__ 18
    #define __GNUC_GNU_INLINE__ 1
    展开全文
  • 在很多*nix环境的代码中,包含了__linux__,或者__GNUC__等字符串。这些字符串实际上为编译器预先定义的宏。可以通过如下命令,显示预处理时定义的宏。 "touch 1.h" "gcc -E -dM 1.h"  其中有个不错的连接,...

      在很多*nix环境的代码中,包含了__linux__,或者__GNUC__等字符串。这些字符串实际上为编译器预先定义的宏。可以通过如下命令,显示预处理时定义的宏。

    "touch 1.h"  "gcc -E -dM 1.h"

      其中有个不错的连接,介绍了不同编译器的宏定义:
      http://sourceforge.net/p/predef/wiki/Home/
      也可以参考gcc预处理选项-dCHARS:
      http://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html

    展开全文
  • Intel C++编译器预定义宏(Windows版、Linux版) 转载自:http://www.cnblogs.com/zyl910/archive/2012/07/06/intel_predefined_macros.html    网上有很多介绍VC与GCC预定义宏的帖子,例如《C\C++宏...
  • [笔记] Intel C++编译器预定义宏(Windows版、Linux版)  网上有很多介绍VC与GCC预定义宏的帖子,例如《C\C++宏大全》。  而对于Intel C++编译器预定义宏,似乎没人介绍。 我Google了很久,发现Intel官网...
  •  网上有很多介绍VC与GCC预定义宏的帖子,例如《C\C++宏大全》。... 而对于Intel C++编译器预定义宏,似乎没人介绍。 我Google了很久,发现Intel官网上有,但是很奇怪,很多链接都失效了,报告40...
  •  而对于Intel C++编译器预定义宏,似乎没人介绍。  我Google了很久,发现Intel官网上有,但是很奇怪,很多链接都失效了,报告404错误。反复调整搜索关键字,一个一个的尝试链接,最后终于找到了
  • 打印方法: ...arm-linux-androideabi-gcc -E -dM -c test.c >> marco_arm.txt #define __DBL_MIN_EXP__ (-1021) #define __HQ_FBIT__ 15 #define __UINT_LEAST16_MAX__ 65535 #define __ARM_SIZEOF_WCHAR_T
  • 预定义宏,  编译器通常会根据平台和编译选项的不同,为被编译的程序提供不同的预定义的宏, 例如WIN32 WIN64 LINUX, 例如DEBUG, RELEASE. 1. 在使用gcc/g++编译器时,可以通过以下命令打印出编译器预编译...
  • 预定义宏 编译器通常会根据平台和编译选项的不同,为被编译的程序提供不同的预定义的宏, 例如WIN32 WIN64 LINUX, 例如DEBUG, RELEASE. 1. 在使用gcc/g++编译器时,可以通过以下命令打印出编译器预编译的宏。 ...
  • 跨平台c/c++编码的预定义宏

    千次阅读 2013-11-02 13:14:24
    首先,不同平台中编译器预定义宏的参考资料 点击这里 其次,我本人仅关注以下平台:linux32/64-gcc, win32/64-vc, win32/64-mingw,这里给一个我自用的侦测上述平台的头文件 /** * @file - * @author jingqi ...
  • C/C++编译器预定宏使用

    千次阅读 2017-04-27 14:09:29
    在C/C++编译器中,会有编译器级别的预定义宏,__FILE__,__LINE__,__FUNCTION__,__DATE__,__TIME__等。  下面来一一介绍这几个宏的含义:  __FILE__ 当前文件的文件名,linux下GCC只有文件名,而在windows下GCC会...
  • 要做跨平台编译,gcc跨Linux/Windows/Mac平台,所以这里只说gcc编译器下怎么区分操作系统 可以用以下命令行获取GCC定义的预编译宏: $ < /dev/null gcc - -march=i386 -dM -E < /dev/null | sort (i386...
  • makefile-理解

    2019-06-26 18:49:32
    参考文章: gcc_编译器预定义宏_是否为空 ... linux/windows下获取gcc(mingw)编译器预定义宏的方式 https://blog.csdn.net/10km/article/details/49023471 首先,了解一下Ubuntu16.04默认...
  • 在阅读代码的时候,在一个宏定义语句中,发现了个之前未曾见过的编译器预定义宏:“__VA_ARGS__”。当时,从代码语句中推测它代表宏参数:“…”(本文称之为省略号),依稀记得printf函数声明中有使用这个省略号,...
  • Makefile 是用于自动编译和链接的,一个工程文件可以由很多文件... 使用automake,程序员只需要写一些简单的含有预定义宏的文件,由autoconf根据一个宏文件生成configure,由automake根据另一个宏文件生成
  • 可变参数宏 ...和_ _VA_ARGS_ _ __VA_ARGS__ 是一个可变参数的宏,很少人知道这个宏,这个可变参数的宏是新...这样预定义宏__VA_ARGS__就可以被用在替换部分中,替换省略号所代表的字符串。比如: #define PR(...) p...
  • cygwin编译环境小记

    2015-10-21 19:32:00
    [gcc] 预定义宏 编译器通常会根据平台和编译选项的不同,为被编译的程序提供不同的预定义的宏, 例如WIN32 WIN64 LINUX, 例如DEBUG, RELEASE. ...除了预定义宏编译器还允许在编译时, 还可以自定义...
  • 宏在代码中的使用实例: g_RunLog2("Middleware client for Linux, build:%s %s", __DATE__, __TIME__); 下面详细介绍宏: ... 这些预定义宏可以被#undef, 也可以被重定义。 在ANSI C标准中定义了__...
  • 10.2.1 C语言强制要求的预定义宏 243 10.2.2 环境宏 244 10.2.3 条件特征宏 245 10.2.4 主流编译器及平台预定义的宏 246 10.3 条件预编译 247 10.4 源文件包含预处理指示符 251 10.5 #error 预处理指示符 256...

空空如也

空空如也

1 2
收藏数 27
精华内容 10
关键字:

linux编译器预定义宏

linux 订阅