banner
cells

cells

为美好的世界献上 code

予め定義されたマクロ

予め定義されたマクロは、コンパイラによって提供されるマクロ定義です。

コンパイラ関連のマクロ#

異なるコンパイラは、それぞれ独自の一連の予め定義されたマクロを提供します。

  • GCC
    • __GNUC__:GCC のメジャーバージョン番号。
    • __GNUC_MINOR__:GCC のマイナーバージョン番号。
    • __GNUC_PATCHLEVEL__:GCC のパッチレベル番号。
  • Clang
    • __clang__:Clang コンパイラを使用している場合に定義されます。
    • __clang_major__:Clang のメジャーバージョン番号。
    • __clang_minor__:Clang のマイナーバージョン番号。
    • __clang_patchlevel__:Clang のパッチレベル番号。
  • MSVC
    • _MSC_VER:MSVC のバージョン番号。
    • _MSC_BUILD:MSVC のビルド番号。

オペレーティングシステム関連のマクロ#

  • Windows
    • _WIN32:32 ビットおよび 64 ビットの Windows システムの両方で定義されます。
    • _WIN64:64 ビットの Windows システムでのみ定義されます。
  • Unix または Unix ライク
    • __unix__:Unix および Unix ライクなシステム(例:Linux)で定義されます。
    • __APPLE__:macOS および iOS システムで定義されます。
    • __linux__:Linux システムで定義されます。
    • __FreeBSD__:FreeBSD システムで定義されます。
    • __OpenBSD__:OpenBSD システムで定義されます。
    • __NetBSD__:NetBSD システムで定義されます。
    • __DragonFly__:DragonFly BSD システムで定義されます。
    • __sun:Solaris システムで定義されます。
    • __hpux:HP-UX システムで定義されます。
    • __sgi:IRIX システムで定義されます。
    • __AIX:AIX システムで定義されます。
  • その他
    • __ANDROID__:Android プラットフォームで定義されます。
    • __CYGWIN__:Cygwin 環境で定義されます。

標準ライブラリ関連のマクロ#

  • __cplusplus:コンパイラが C++ コードをコンパイルしているかどうかを示すために使用されます。コンパイラが C++ コードをコンパイルしている場合、このマクロの値はゼロ以外の値になります。それ以外の場合、このマクロは未定義です。
  • __STDC__:コンパイラが C 規格に従っているかどうかを示すために使用されます。コンパイラが C 規格に従っている場合、このマクロの値は 1 になります。それ以外の場合、このマクロは未定義です。
  • __STDC_VERSION_:C 規格のバージョン。

ハードウェアアーキテクチャ関連のマクロ#

  • __arm__:arm アーキテクチャ
  • __x86_64__:x86_64 アーキテクチャ

もしも不備があれば、ご指摘ください

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。