programing:c-language:compiler-os-macro-define
差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| programing:c-language:compiler-os-macro-define [2021/05/04 02:43] – [テーブル] yoko | programing:c-language:compiler-os-macro-define [2024/11/18 02:38] (現在) – [テーブル] yoko | ||
|---|---|---|---|
| 行 3: | 行 3: | ||
| C言語で様々なOSやコンパイラで共通ソースにしたい時、条件コンパイルで切換えたい場合がある。その時に利用するマクロ名について、備忘録を残す。 | C言語で様々なOSやコンパイラで共通ソースにしたい時、条件コンパイルで切換えたい場合がある。その時に利用するマクロ名について、備忘録を残す。 | ||
| - | 定義済みマクロ名 | + | ===== 定義済みマクロ名 |
| - | --------------- | + | |
| 定義済みマクロは、下記コマンドで確認できる。 | 定義済みマクロは、下記コマンドで確認できる。 | ||
| 行 11: | 行 10: | ||
| </ | </ | ||
| - | ### コンパイラ判定 | + | <code bash> |
| - | ^ コンパイラ | + | $ echo | arm-none-eabi-gcc -dM -E - |
| - | | GCC | `__GNUC__` | + | </ |
| - | | IAR EWARM | `__ICCARM__` | + | |
| - | | ARMコンパイラ | + | |
| - | | インテルコンパイラ | + | |
| - | | Borland C++ | `__BORLANDC__` | + | |
| - | | Appleコンパイラ | + | |
| + | ==== コンパイラ判定 ==== | ||
| + | ^ コンパイラ | ||
| + | | GCC | `__GNUC__` | ||
| + | | GCC/ | ||
| + | | IAR EWARM | `__ICCARM__` | ||
| + | | ARMコンパイラ | ||
| + | | インテルコンパイラ | ||
| + | | Borland C++ | `__BORLANDC__` | ||
| + | | Appleコンパイラ | ||
| - | ### 実行環境判定 | ||
| - | ^ 実行環境 | ||
| - | | UNIX | `__unix__` | ||
| - | | Linux | `__linux__` | ||
| - | | Windows(32bit) | ||
| - | | Windows(64bit) | ||
| - | | msys2(32bit) | ||
| - | | msys2(64bit) | ||
| - | | Cygwin | ||
| - | | macOS | `__MACH__` | ||
| - | ### 64bit環境判定 | + | ==== 実行環境判定 |
| - | ^ 実行環境 | + | ^ 実行環境 |
| - | | Linux/macOS | `__x86_64` | | | | + | | UNIX | `__unix__` |
| + | | Linux | `__linux__` | ||
| + | | Windows(32bit) | ||
| + | | Windows(64bit) | ||
| + | | msys2(32bit) | ||
| + | | msys2(64bit) | ||
| + | | Cygwin | ||
| + | | macOS | ||
| + | ==== 64bit環境判定 ==== | ||
| + | ^ 実行環境 | ||
| + | | Linux/ | ||
| + | | macOS(Apple sillicon) | ||
| + | |||
| + | |||
| + | ===== 参考 ===== | ||
| - | 参考 | ||
| - | ---- | ||
| 1. [[https:// | 1. [[https:// | ||
| 行 44: | 行 49: | ||
| 3. [[http:// | 3. [[http:// | ||
| 4. [[https:// | 4. [[https:// | ||
| + | 5. [[https:// | ||
| + | 6. [[https:// | ||
| + | |||
| + | |||
programing/c-language/compiler-os-macro-define.1620096181.txt.gz · 最終更新: by yoko
