D

C に適用 C++ に適用

目的

#define プリプロセッサー・ディレクティブにあるのと同様にマクロ name を定義します。definition は、 name に割り当てるオプションの定義または値です。

構文


構文図

また、マクロ名がすでに -D コンパイラー・オプションによって定義されていない場合は、#define プリプロセッサー・ディレクティブを使用してソース・プログラムのマクロ名を定義することができます。

-Dname= は、 #define name と同等です。

-Dname は、#define name 1 と同等です。(これがデフォルトです。)

-D オプションによってすでに定義されているマクロ名を定義するのに #define ディレクティブを使用すると、エラー状態になります。

プログラムの移植性および標準への適合性を援助するために、オペレーティング・システムは、 -D オプションで設定することができるマクロ名を参照するヘッダー・ファイルをいくつか提供します。これらのヘッダー・ファイルのほとんどは、 /usr/include ディレクトリーまたは /usr/include/sys ディレクトリーのいずれかに入っています。

ソース・ファイルに対する正しいマクロを確実に定義するには、適切なマクロ名を指定して -D オプションを使用してください。

-Uname オプションは、-D オプションによって定義されたマクロを未定義にするために使用され、その優先順位は -Dname オプションよりも上です。

  1. myprogram.c において、 COUNT という名前のインスタンスをすべて 100 で置換するには、以下を入力します。
    xlc myprogram.c -DCOUNT=100
    
    これは、ソース・ファイルの先頭に #define COUNT 100 があることと同等です。

関連参照

コンパイラーのコマンド行オプション
U
付録 A, 事前定義マクロ IBM Copyright 2003