インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

コンパイラー・オプションの一般的な規則

このセクションでは、コンパイラー・オプションの一般的な規則と、コンパイラー・オプション名の表記方法について説明します。

コンパイラー・オプションの一般的な規則

複数のオプションを 1 つのダッシュ (Linux* および macOS*) またはスラッシュ (Windows*) だけで指定することはできません。次に例を示します。

すべてのコンパイラー・オプションは、大文字と小文字が区別されます。一部のオプションは、大文字と小文字では意味が異なります。例えば、"c" オプションはリンクを抑止しますが、"C" オプションは前処理済みのソース出力の中にコメントを書き込みます。

コマンドラインで指定されたオプションは、すべてのファイルに適用されます。

オプションの引数は、ファイル名、文字列、文字、または数字です。文字列に空白が含まれている場合、文字列を二重引用符 (") で囲む必要があります。次に例を示します。

コンパイラー・オプションは任意の順番で指定できます。

Windows* システムでは、すべてのコンパイラー・オプションはコマンドラインで /link オプションの前に指定しなければなりません (該当する場合)。

特定のオプションを指定しなければ、コマンドラインは指定されたファイルに対してコンパイルとリンクの両方を行います。

オプションを一意に識別できるだけの文字数を入力すれば、いくつかのオプション名は短縮可能です。

一部のオプションは、オプション名の後に 1 つ以上のキーワード引数を受け付けます。例えば、arch オプションは複数のキーワードを受け付けます。

通常、複数のキーワードを指定するには、そのオプションを複数回指定します。ただし、例外もあります。次のオプションは有効です: -axNB (Linux*) または /QaxNB (Windows*)。

コンパイラー・オプションは、コンパイラー・プラグマを使用して無効にしない限り、コンパイル全体で効果があります。

オプションを無効にするには、オプションの否定形を指定します。

Windows* システムでは、コマンドラインの最後に /Od を指定すると、1 つまたは複数の最適化オプションを無効にすることができます。

Windows* システムでは、/Od オプションは /Od/O1/O2/O3、および /Ox を含む相互排他的なオプショングループの一部です。同じオプショングループのオプションを 2 つ以上指定した場合、コマンドラインで最後に指定したオプションが、その前に指定したオプションよりも優先されます。

コマンドライン上に、オプションを有効にするバージョンと無効にするバージョンの両方がある場合、最後に指定したバージョンが優先されます。

コンパイラー・オプション名の表記方法

このドキュメントでは、次の表記規則に従ってコンパイラー・オプション名を略しています。

似ていないコンパイラー・オプションはフルネームで表示されます。