プリプロセッサシンボル name; の定義を削除します。このオプションは、コマンド行ドライバで配置された要素も含む同一コマンド行において -D で作成されたプリプロセッサシンボル name; の初期定義を削除します。
-U は、ソースファイルのプリプロセッサ指令に影響しません。コマンド行に複数の -U オプションを配置できます。
コマンド行の -D と -U に同じ name が指定された場合、オプションの配置順に関係なく、name の定義が削除されます。次の図で、-U は __sun の定義のを削除します。
cc -U__sun text.c |
test.c の次の書式のプリプロセッサ文は、__sun の定義が削除されているために有効になりません。
#ifdef(__sun) |
定義済みシンボルのリストについては、「B.2.7 -Dname[(arg[,arg])][=expasion]」 を参照してください。