-A オプション、-D オプションおよび -U オプションを使用して、前処理ディレクティブと同等の働きをするようにできます。
アサーションを作成するには、-Aオプションを使用します。構文: -Aname[(value)].
引数 - | 説明 |
---|---|
name | アサーションの識別子(名前)を指定します。 |
value |
アサーションのvalue(値)を指定します。valueを指定する場合は、それを区切る括弧とともに引用符で囲む必要があります。 |
例えば、識別子を fruit とし、値を orange と banana としてアサーションを作成するには、次のコマンドを実行します。
マクロの定義には-Dオプションを使用します。構文: -Dname[=value].
引数 - | 説明 |
---|---|
name | 定義するマクロの名前です。 |
value | 名前として入力する値です。value を入力しなかった場合、name は1に設定されます。英数字以外を含んでいる値は引用符で囲んでください。 |
例えば、SIZEという名前のマクロを定義し、値を100にするには、次のコマンドを実行します。
-D オプションは、関数を定義するときにも使用されます。例: icc -D"f(x)=x" prog1.c
事前定義済みマクロを削除(取消し)するには、-U オプションを使用します。構文: -Uname.
引数 - | 説明 |
---|---|
name | 取り消すマクロの名前 |
同じコンパイルで、-D オプションと -U オプションを使用する場合、コンパイラは、コマンドラインで入力した順番ではなく、 -U オプションより先に -D オプションを処理します。