事前定義済みマクロ

読み:じぜんていぎずみマクロ
品詞:名詞

C/C++のコンパイラーがあらかじめ実装として持っているプリプロセッサーマクロのこと。ソース中で定義しなくても利用することができる。

目次

C

Cで標準化されているものは、次のとおり。

ISO/IEC 9899:1990

  • __DATE__ ‐ コンパイル時の日付。"Mmm dd yyyy" 形式の文字列(例、"Oct 10 2010")
  • __FILE__ ‐ コンパイルされるソースファイルのファイル名
  • __LINE__ ‐ 現在の行番号。10進数の定数で表わされる
  • __TIME__ ‐ ソースのコンパイル時刻。"hh:mm:ss" 形式の文字列 (例、"01:23:45")
  • __STDC__ ‐ 標準Cに準拠している場合に定義され、ANSI C準拠なら1になる。C++では処理系定義。#ifdef用

ISO/IEC 9899:1990/Amendment 1:1995

  • __STDC_VERSION__ ‐ C言語仕様のバージョンをあらわす整数。199409L、199901L、など

ISO/IEC 9899:1999

  • __func__ ‐ 関数名(一部の実装で、__FUNCTION__が独自定義されている)
  • __STDC_HOSTED__ ‐ 処理系が規格に合致したホスト処理系である場合に定義される
  • __STDC_ISO_10646__ ‐ wchar_tがISO/IEC 10646(UNICODE)に準拠している時に定義
  • __STDC_IEC_559__ ‐ IEC 60559浮動小数点仕様に準拠している場合に定義される
  • __STDC_IEC_559_COMPLEX__ ‐ IEC 60559互換の複素数仕様に準拠している場合に定義される
  • __TIMESTAMP__ ‐ ソースの保存日時。"Ddd Mmm dd hh:mm:ss yyyy" 形式

C++

C++で標準化されているものは、次のとおり。

  • __cplusplus ‐ 標準C++に準拠している場合に定義される、言語仕様バージョンをあらわす整数。199711L、など

その他

独自実装のマクロ

実装独自の事前定義済みマクロも多数存在する。これらは実装の独自定義に依存しており、前後に__が無いものが使われていることもある。

特に明記が無い場合、条件に一致する場合にのみ定義があり、さもなくば未定義である。

また実装に依存するため、条件に該当していても、定義がない場合もありうる。

OSの種類

OSごとに定義されているもの。これらは、OSを区別してコンパイルする場合に使われる。

  • __FreeBSD__ ‐ FreeBSDの場合、メジャーバージョン番号
  • __NetBSD__
  • __OpenBSD__
  • __DragonFly__
  • __linux__ ‐ Linuxの場合、1
  • __WIN32__ ‐ 32ビットのMicrosoft Windowsの場合
  • __APPLE__ ‐ Mac OSシリーズの場合、1

CPUの種類

使用中のCPUの差異により区別する場合のマクロ。

  • __i386__ ‐ IA-32の場合、1
  • __x86_64__ ‐ AMD64/Intel 64の場合、1
  • __alpha__
  • __mips__
  • __sparc__
  • __ppc__ ‐ PowerPCの場合、1

データ型モデル

データ型モデルの違いで定義を変更したい場合のためのマクロ。

  • __LP64__ ‐ LP64の場合、1
  • __LLP64__ ‐ LLP64の場合、1
  • __ILP64__ ‐ ILP64の場合、1

エンディアンネス

エンディアンネスに応じて、次のいずれかが定義されることがある。

確認方法

GCCで、定義済みマクロを調べるためには、次のいずれかの方法を使う。

> echo | gcc -E -dM -

> cpp -dM /dev/null

clang/LLVMで、定義済みマクロを調べるためには、同様に次の方法がある。

> echo | clang -E -dM -

GCC(FreeBSD/i386)

FreeBSD/i386用のGCC 4.2.1では、次のような出力が得られる。読みやすいように、ソートしたもの("echo | gcc -E -dM - | sort")を掲示する。

#define _LONGLONG 1

#define __CHAR_BIT__ 8

#define __DBL_DENORM_MIN__ 4.9406564584124654e-324

#define __DBL_DIG__ 15

#define __DBL_EPSILON__ 2.2204460492503131e-16

#define __DBL_HAS_DENORM__ 1

#define __DBL_HAS_INFINITY__ 1

#define __DBL_HAS_QUIET_NAN__ 1

#define __DBL_MANT_DIG__ 53

#define __DBL_MAX_10_EXP__ 308

#define __DBL_MAX_EXP__ 1024

#define __DBL_MAX__ 1.7976931348623157e+308

#define __DBL_MIN_10_EXP__ (-307)

#define __DBL_MIN_EXP__ (-1021)

#define __DBL_MIN__ 2.2250738585072014e-308

#define __DEC128_DEN__ 0.000000000000000000000000000000001E-6143DL

#define __DEC128_EPSILON__ 1E-33DL

#define __DEC128_MANT_DIG__ 34

#define __DEC128_MAX_EXP__ 6144

#define __DEC128_MAX__ 9.999999999999999999999999999999999E6144DL

#define __DEC128_MIN_EXP__ (-6143)

#define __DEC128_MIN__ 1E-6143DL

#define __DEC32_DEN__ 0.000001E-95DF

#define __DEC32_EPSILON__ 1E-6DF

#define __DEC32_MANT_DIG__ 7

#define __DEC32_MAX_EXP__ 96

#define __DEC32_MAX__ 9.999999E96DF

#define __DEC32_MIN_EXP__ (-95)

#define __DEC32_MIN__ 1E-95DF

#define __DEC64_DEN__ 0.000000000000001E-383DD

#define __DEC64_EPSILON__ 1E-15DD

#define __DEC64_MANT_DIG__ 16

#define __DEC64_MAX_EXP__ 384

#define __DEC64_MAX__ 9.999999999999999E384DD

#define __DEC64_MIN_EXP__ (-383)

#define __DEC64_MIN__ 1E-383DD

#define __DECIMAL_DIG__ 17

#define __DEC_EVAL_METHOD__ 2

#define __ELF__ 1

#define __FINITE_MATH_ONLY__ 0

#define __FLT_DENORM_MIN__ 1.40129846e-45F

#define __FLT_DIG__ 6

#define __FLT_EPSILON__ 1.19209290e-7F

#define __FLT_EVAL_METHOD__ 2

#define __FLT_HAS_DENORM__ 1

#define __FLT_HAS_INFINITY__ 1

#define __FLT_HAS_QUIET_NAN__ 1

#define __FLT_MANT_DIG__ 24

#define __FLT_MAX_10_EXP__ 38

#define __FLT_MAX_EXP__ 128

#define __FLT_MAX__ 3.40282347e+38F

#define __FLT_MIN_10_EXP__ (-37)

#define __FLT_MIN_EXP__ (-125)

#define __FLT_MIN__ 1.17549435e-38F

#define __FLT_RADIX__ 2

#define __FreeBSD__ 8

#define __FreeBSD_cc_version 800001

#define __GNUC_GNU_INLINE__ 1

#define __GNUC_MINOR__ 2

#define __GNUC_PATCHLEVEL__ 1

#define __GNUC__ 4

#define __GXX_ABI_VERSION 1002

#define __INTMAX_MAX__ 9223372036854775807LL

#define __INTMAX_TYPE__ long long int

#define __INT_MAX__ 2147483647

#define __KPRINTF_ATTRIBUTE__ 1

#define __LDBL_DENORM_MIN__ 7.4653686412953080e-4948L

#define __LDBL_DIG__ 15

#define __LDBL_EPSILON__ 2.2204460492503131e-16L

#define __LDBL_HAS_DENORM__ 1

#define __LDBL_HAS_INFINITY__ 1

#define __LDBL_HAS_QUIET_NAN__ 1

#define __LDBL_MANT_DIG__ 53

#define __LDBL_MAX_10_EXP__ 4932

#define __LDBL_MAX_EXP__ 16384

#define __LDBL_MAX__ 1.1897314953572316e+4932L

#define __LDBL_MIN_10_EXP__ (-4931)

#define __LDBL_MIN_EXP__ (-16381)

#define __LDBL_MIN__ 3.3621031431120935e-4932L

#define __LONG_LONG_MAX__ 9223372036854775807LL

#define __LONG_MAX__ 2147483647L

#define __NO_INLINE__ 1

#define __PTRDIFF_TYPE__ int

#define __REGISTER_PREFIX__

#define __SCHAR_MAX__ 127

#define __SHRT_MAX__ 32767

#define __SIZE_TYPE__ unsigned int

#define __STDC_HOSTED__ 1

#define __STDC__ 1

#define __UINTMAX_TYPE__ long long unsigned int

#define __USER_LABEL_PREFIX__

#define __VERSION__ "4.2.1 20070719 [FreeBSD]"

#define __WCHAR_MAX__ 2147483647

#define __WCHAR_TYPE__ int

#define __WINT_TYPE__ int

#define __i386 1

#define __i386__ 1

#define __unix 1

#define __unix__ 1

#define i386 1

#define unix 1

動的に変化するものは表示されない。

これを見ると、GPLv2としてリリースされた最後のGCCであるGCC 4.2.1はC90に準拠しており、そしていくつかのC99拡張を含むことが分かる。

clang(FreeBSD/x64)

FreeBSD 9.1/x64のclang/LLVM 3.1では、次のような出力が得られる。読みやすいように、ソートしたもの("echo | clang -E -dM - | sort")を掲示する。

#define _LP64 1

#define __ATOMIC_ACQUIRE 2

#define __ATOMIC_ACQ_REL 4

#define __ATOMIC_CONSUME 1

#define __ATOMIC_RELAXED 0

#define __ATOMIC_RELEASE 3

#define __ATOMIC_SEQ_CST 5

#define __CHAR16_TYPE__ unsigned short

#define __CHAR32_TYPE__ unsigned int

#define __CHAR_BIT__ 8

#define __CONSTANT_CFSTRINGS__ 1

#define __DBL_DENORM_MIN__ 4.9406564584124654e-324

#define __DBL_DIG__ 15

#define __DBL_EPSILON__ 2.2204460492503131e-16

#define __DBL_HAS_DENORM__ 1

#define __DBL_HAS_INFINITY__ 1

#define __DBL_HAS_QUIET_NAN__ 1

#define __DBL_MANT_DIG__ 53

#define __DBL_MAX_10_EXP__ 308

#define __DBL_MAX_EXP__ 1024

#define __DBL_MAX__ 1.7976931348623157e+308

#define __DBL_MIN_10_EXP__ (-307)

#define __DBL_MIN_EXP__ (-1021)

#define __DBL_MIN__ 2.2250738585072014e-308

#define __DECIMAL_DIG__ 21

#define __ELF__ 1

#define __FINITE_MATH_ONLY__ 0

#define __FLT_DENORM_MIN__ 1.40129846e-45F

#define __FLT_DIG__ 6

#define __FLT_EPSILON__ 1.19209290e-7F

#define __FLT_EVAL_METHOD__ 0

#define __FLT_HAS_DENORM__ 1

#define __FLT_HAS_INFINITY__ 1

#define __FLT_HAS_QUIET_NAN__ 1

#define __FLT_MANT_DIG__ 24

#define __FLT_MAX_10_EXP__ 38

#define __FLT_MAX_EXP__ 128

#define __FLT_MAX__ 3.40282347e+38F

#define __FLT_MIN_10_EXP__ (-37)

#define __FLT_MIN_EXP__ (-125)

#define __FLT_MIN__ 1.17549435e-38F

#define __FLT_RADIX__ 2

#define __FreeBSD__ 9

#define __FreeBSD_cc_version 900001

#define __GCC_ATOMIC_BOOL_LOCK_FREE 2

#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2

#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2

#define __GCC_ATOMIC_CHAR_LOCK_FREE 2

#define __GCC_ATOMIC_INT_LOCK_FREE 2

#define __GCC_ATOMIC_LLONG_LOCK_FREE 2

#define __GCC_ATOMIC_LONG_LOCK_FREE 2

#define __GCC_ATOMIC_POINTER_LOCK_FREE 2

#define __GCC_ATOMIC_SHORT_LOCK_FREE 2

#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1

#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2

#define __GNUC_MINOR__ 2

#define __GNUC_PATCHLEVEL__ 1

#define __GNUC_STDC_INLINE__ 1

#define __GNUC__ 4

#define __GXX_ABI_VERSION 1002

#define __GXX_RTTI 1

#define __INT16_TYPE__ short

#define __INT32_TYPE__ int

#define __INT64_C_SUFFIX__ L

#define __INT64_TYPE__ long int

#define __INT8_TYPE__ char

#define __INTMAX_MAX__ 9223372036854775807L

#define __INTMAX_TYPE__ long int

#define __INTMAX_WIDTH__ 64

#define __INTPTR_TYPE__ long int

#define __INTPTR_WIDTH__ 64

#define __INT_MAX__ 2147483647

#define __KPRINTF_ATTRIBUTE__ 1

#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L

#define __LDBL_DIG__ 18

#define __LDBL_EPSILON__ 1.08420217248550443401e-19L

#define __LDBL_HAS_DENORM__ 1

#define __LDBL_HAS_INFINITY__ 1

#define __LDBL_HAS_QUIET_NAN__ 1

#define __LDBL_MANT_DIG__ 64

#define __LDBL_MAX_10_EXP__ 4932

#define __LDBL_MAX_EXP__ 16384

#define __LDBL_MAX__ 1.18973149535723176502e+4932L

#define __LDBL_MIN_10_EXP__ (-4931)

#define __LDBL_MIN_EXP__ (-16381)

#define __LDBL_MIN__ 3.36210314311209350626e-4932L

#define __LITTLE_ENDIAN__ 1

#define __LONG_LONG_MAX__ 9223372036854775807LL

#define __LONG_MAX__ 9223372036854775807L

#define __LP64__ 1

#define __MMX__ 1

#define __NO_INLINE__ 1

#define __NO_MATH_INLINES 1

#define __POINTER_WIDTH__ 64

#define __PRAGMA_REDEFINE_EXTNAME 1

#define __PTRDIFF_TYPE__ long int

#define __PTRDIFF_WIDTH__ 64

#define __REGISTER_PREFIX__

#define __SCHAR_MAX__ 127

#define __SHRT_MAX__ 32767

#define __SIG_ATOMIC_WIDTH__ 32

#define __SIZEOF_DOUBLE__ 8

#define __SIZEOF_FLOAT__ 4

#define __SIZEOF_INT__ 4

#define __SIZEOF_LONG_DOUBLE__ 16

#define __SIZEOF_LONG_LONG__ 8

#define __SIZEOF_LONG__ 8

#define __SIZEOF_POINTER__ 8

#define __SIZEOF_PTRDIFF_T__ 8

#define __SIZEOF_SHORT__ 2

#define __SIZEOF_SIZE_T__ 8

#define __SIZEOF_WCHAR_T__ 4

#define __SIZEOF_WINT_T__ 4

#define __SIZE_TYPE__ long unsigned int

#define __SIZE_WIDTH__ 64

#define __SSE2_MATH__ 1

#define __SSE2__ 1

#define __SSE_MATH__ 1

#define __SSE__ 1

#define __STDC_HOSTED__ 1

#define __STDC_VERSION__ 199901L

#define __STDC__ 1

#define __UINTMAX_TYPE__ long unsigned int

#define __USER_LABEL_PREFIX__

#define __VERSION__ "4.2.1 Compatible FreeBSD Clang 3.1 ((branches/release_31 156863))"

#define __WCHAR_MAX__ 2147483647

#define __WCHAR_TYPE__ int

#define __WCHAR_WIDTH__ 32

#define __WINT_TYPE__ int

#define __WINT_WIDTH__ 32

#define __amd64 1

#define __amd64__ 1

#define __clang__ 1

#define __clang_major__ 3

#define __clang_minor__ 1

#define __clang_patchlevel__ 0

#define __clang_version__ "3.1 ((branches/release_31 156863))"

#define __k8 1

#define __k8__ 1

#define __llvm__ 1

#define __tune_k8__ 1

#define __unix 1

#define __unix__ 1

#define __x86_64 1

#define __x86_64__ 1

#define unix 1

これを見ると、clang/LLVMは、GPLv2としてリリースされた最後のGCCであるGCC 4.2.1との互換性に最大限配慮していることが分かる。

Linux/x64

Ubuntu 12.04/x86_64用のgcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3 では、次のような出力が得られる。同様に、読みやすいように、ソートしたもの("echo | gcc -E -dM - | sort")を掲示する。

#define _FORTIFY_SOURCE 2

#define _LP64 1

#define __BIGGEST_ALIGNMENT__ 16

#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__

#define __CHAR16_TYPE__ short unsigned int

#define __CHAR32_TYPE__ unsigned int

#define __CHAR_BIT__ 8

#define __DBL_DECIMAL_DIG__ 17

#define __DBL_DENORM_MIN__ ((double)4.94065645841246544177e-324L)

#define __DBL_DIG__ 15

#define __DBL_EPSILON__ ((double)2.22044604925031308085e-16L)

#define __DBL_HAS_DENORM__ 1

#define __DBL_HAS_INFINITY__ 1

#define __DBL_HAS_QUIET_NAN__ 1

#define __DBL_MANT_DIG__ 53

#define __DBL_MAX_10_EXP__ 308

#define __DBL_MAX_EXP__ 1024

#define __DBL_MAX__ ((double)1.79769313486231570815e+308L)

#define __DBL_MIN_10_EXP__ (-307)

#define __DBL_MIN_EXP__ (-1021)

#define __DBL_MIN__ ((double)2.22507385850720138309e-308L)

#define __DEC128_EPSILON__ 1E-33DL

#define __DEC128_MANT_DIG__ 34

#define __DEC128_MAX_EXP__ 6145

#define __DEC128_MAX__ 9.999999999999999999999999999999999E6144DL

#define __DEC128_MIN_EXP__ (-6142)

#define __DEC128_MIN__ 1E-6143DL

#define __DEC128_SUBNORMAL_MIN__ 0.000000000000000000000000000000001E-6143DL

#define __DEC32_EPSILON__ 1E-6DF

#define __DEC32_MANT_DIG__ 7

#define __DEC32_MAX_EXP__ 97

#define __DEC32_MAX__ 9.999999E96DF

#define __DEC32_MIN_EXP__ (-94)

#define __DEC32_MIN__ 1E-95DF

#define __DEC32_SUBNORMAL_MIN__ 0.000001E-95DF

#define __DEC64_EPSILON__ 1E-15DD

#define __DEC64_MANT_DIG__ 16

#define __DEC64_MAX_EXP__ 385

#define __DEC64_MAX__ 9.999999999999999E384DD

#define __DEC64_MIN_EXP__ (-382)

#define __DEC64_MIN__ 1E-383DD

#define __DEC64_SUBNORMAL_MIN__ 0.000000000000001E-383DD

#define __DECIMAL_BID_FORMAT__ 1

#define __DECIMAL_DIG__ 21

#define __DEC_EVAL_METHOD__ 2

#define __ELF__ 1

#define __FINITE_MATH_ONLY__ 0

#define __FLOAT_WORD_ORDER__ __ORDER_LITTLE_ENDIAN__

#define __FLT_DECIMAL_DIG__ 9

#define __FLT_DENORM_MIN__ 1.40129846432481707092e-45F

#define __FLT_DIG__ 6

#define __FLT_EPSILON__ 1.19209289550781250000e-7F

#define __FLT_EVAL_METHOD__ 0

#define __FLT_HAS_DENORM__ 1

#define __FLT_HAS_INFINITY__ 1

#define __FLT_HAS_QUIET_NAN__ 1

#define __FLT_MANT_DIG__ 24

#define __FLT_MAX_10_EXP__ 38

#define __FLT_MAX_EXP__ 128

#define __FLT_MAX__ 3.40282346638528859812e+38F

#define __FLT_MIN_10_EXP__ (-37)

#define __FLT_MIN_EXP__ (-125)

#define __FLT_MIN__ 1.17549435082228750797e-38F

#define __FLT_RADIX__ 2

#define __GCC_HAVE_DWARF2_CFI_ASM 1

#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 __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 1

#define __GNUC_GNU_INLINE__ 1

#define __GNUC_MINOR__ 6

#define __GNUC_PATCHLEVEL__ 3

#define __GNUC__ 4

#define __GXX_ABI_VERSION 1002

#define __INT16_C(c) c

#define __INT16_MAX__ 32767

#define __INT16_TYPE__ short int

#define __INT32_C(c) c

#define __INT32_MAX__ 2147483647

#define __INT32_TYPE__ int

#define __INT64_C(c) c ## L

#define __INT64_MAX__ 9223372036854775807L

#define __INT64_TYPE__ long int

#define __INT8_C(c) c

#define __INT8_MAX__ 127

#define __INT8_TYPE__ signed char

#define __INTMAX_C(c) c ## L

#define __INTMAX_MAX__ 9223372036854775807L

#define __INTMAX_TYPE__ long int

#define __INTPTR_MAX__ 9223372036854775807L

#define __INTPTR_TYPE__ long int

#define __INT_FAST16_MAX__ 9223372036854775807L

#define __INT_FAST16_TYPE__ long int

#define __INT_FAST32_MAX__ 9223372036854775807L

#define __INT_FAST32_TYPE__ long int

#define __INT_FAST64_MAX__ 9223372036854775807L

#define __INT_FAST64_TYPE__ long int

#define __INT_FAST8_MAX__ 127

#define __INT_FAST8_TYPE__ signed char

#define __INT_LEAST16_MAX__ 32767

#define __INT_LEAST16_TYPE__ short int

#define __INT_LEAST32_MAX__ 2147483647

#define __INT_LEAST32_TYPE__ int

#define __INT_LEAST64_MAX__ 9223372036854775807L

#define __INT_LEAST64_TYPE__ long int

#define __INT_LEAST8_MAX__ 127

#define __INT_LEAST8_TYPE__ signed char

#define __INT_MAX__ 2147483647

#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L

#define __LDBL_DIG__ 18

#define __LDBL_EPSILON__ 1.08420217248550443401e-19L

#define __LDBL_HAS_DENORM__ 1

#define __LDBL_HAS_INFINITY__ 1

#define __LDBL_HAS_QUIET_NAN__ 1

#define __LDBL_MANT_DIG__ 64

#define __LDBL_MAX_10_EXP__ 4932

#define __LDBL_MAX_EXP__ 16384

#define __LDBL_MAX__ 1.18973149535723176502e+4932L

#define __LDBL_MIN_10_EXP__ (-4931)

#define __LDBL_MIN_EXP__ (-16381)

#define __LDBL_MIN__ 3.36210314311209350626e-4932L

#define __LONG_LONG_MAX__ 9223372036854775807LL

#define __LONG_MAX__ 9223372036854775807L

#define __LP64__ 1

#define __MMX__ 1

#define __NO_INLINE__ 1

#define __ORDER_BIG_ENDIAN__ 4321

#define __ORDER_LITTLE_ENDIAN__ 1234

#define __ORDER_PDP_ENDIAN__ 3412

#define __PRAGMA_REDEFINE_EXTNAME 1

#define __PTRDIFF_MAX__ 9223372036854775807L

#define __PTRDIFF_TYPE__ long int

#define __REGISTER_PREFIX__

#define __SCHAR_MAX__ 127

#define __SHRT_MAX__ 32767

#define __SIG_ATOMIC_MAX__ 2147483647

#define __SIG_ATOMIC_MIN__ (-__SIG_ATOMIC_MAX__ - 1)

#define __SIG_ATOMIC_TYPE__ int

#define __SIZEOF_DOUBLE__ 8

#define __SIZEOF_FLOAT__ 4

#define __SIZEOF_INT128__ 16

#define __SIZEOF_INT__ 4

#define __SIZEOF_LONG_DOUBLE__ 16

#define __SIZEOF_LONG_LONG__ 8

#define __SIZEOF_LONG__ 8

#define __SIZEOF_POINTER__ 8

#define __SIZEOF_PTRDIFF_T__ 8

#define __SIZEOF_SHORT__ 2

#define __SIZEOF_SIZE_T__ 8

#define __SIZEOF_WCHAR_T__ 4

#define __SIZEOF_WINT_T__ 4

#define __SIZE_MAX__ 18446744073709551615UL

#define __SIZE_TYPE__ long unsigned int

#define __SSE2_MATH__ 1

#define __SSE2__ 1

#define __SSE_MATH__ 1

#define __SSE__ 1

#define __SSP__ 1

#define __STDC_HOSTED__ 1

#define __STDC__ 1

#define __UINT16_C(c) c

#define __UINT16_MAX__ 65535

#define __UINT16_TYPE__ short unsigned int

#define __UINT32_C(c) c ## U

#define __UINT32_MAX__ 4294967295U

#define __UINT32_TYPE__ unsigned int

#define __UINT64_C(c) c ## UL

#define __UINT64_MAX__ 18446744073709551615UL

#define __UINT64_TYPE__ long unsigned int

#define __UINT8_C(c) c

#define __UINT8_MAX__ 255

#define __UINT8_TYPE__ unsigned char

#define __UINTMAX_C(c) c ## UL

#define __UINTMAX_MAX__ 18446744073709551615UL

#define __UINTMAX_TYPE__ long unsigned int

#define __UINTPTR_MAX__ 18446744073709551615UL

#define __UINTPTR_TYPE__ long unsigned int

#define __UINT_FAST16_MAX__ 18446744073709551615UL

#define __UINT_FAST16_TYPE__ long unsigned int

#define __UINT_FAST32_MAX__ 18446744073709551615UL

#define __UINT_FAST32_TYPE__ long unsigned int

#define __UINT_FAST64_MAX__ 18446744073709551615UL

#define __UINT_FAST64_TYPE__ long unsigned int

#define __UINT_FAST8_MAX__ 255

#define __UINT_FAST8_TYPE__ unsigned char

#define __UINT_LEAST16_MAX__ 65535

#define __UINT_LEAST16_TYPE__ short unsigned int

#define __UINT_LEAST32_MAX__ 4294967295U

#define __UINT_LEAST32_TYPE__ unsigned int

#define __UINT_LEAST64_MAX__ 18446744073709551615UL

#define __UINT_LEAST64_TYPE__ long unsigned int

#define __UINT_LEAST8_MAX__ 255

#define __UINT_LEAST8_TYPE__ unsigned char

#define __USER_LABEL_PREFIX__

#define __VERSION__ "4.6.3"

#define __WCHAR_MAX__ 2147483647

#define __WCHAR_MIN__ (-__WCHAR_MAX__ - 1)

#define __WCHAR_TYPE__ int

#define __WINT_MAX__ 4294967295U

#define __WINT_MIN__ 0U

#define __WINT_TYPE__ unsigned int

#define __amd64 1

#define __amd64__ 1

#define __gnu_linux__ 1

#define __k8 1

#define __k8__ 1

#define __linux 1

#define __linux__ 1

#define __unix 1

#define __unix__ 1

#define __x86_64 1

#define __x86_64__ 1

#define linux 1

#define unix 1

用語の所属
マクロ

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club