GCC / G ++的宏可以区分Linux和Mac OSX?
下次您要检出平台上GCC支持的预定义宏时,请使用标志运行预处理器-dM。它将列出系统上所有可用的预定义宏。例如:
-dM
$ touch dummy.hxx $ cpp -dM ./dummy.hxx #define __DBL_MIN_EXP__ (-1021) #define __FLT_MIN__ 1.17549435e-38F #define __CHAR_BIT__ 8 #define __WCHAR_MAX__ 2147483647 #define __DBL_DENORM_MIN__ 4.9406564584124654e-324 #define __FLT_EVAL_METHOD__ 0 #define __DBL_MIN_10_EXP__ (-307) #define __FINITE_MATH_ONLY__ 0 #define __SHRT_MAX__ 32767 #define __LDBL_MAX__ 1.18973149535723176502e+4932L #define __UINTMAX_TYPE__ long unsigned int #define __linux 1 #define __unix 1 #define __linux__ 1 ...