C言語におけるマクロの定義と使用
2622 ワード
C言語におけるマクロの定義と使用
3種類の前処理命令
マクロ定義
マクロは比較的よく用いられる前処理命令であり,ここでは主にパラメータ付きマクロについて論じる.
パラメータ付きマクロ(関数マクロ)は、次のように定義されます.
#define EXAMPLE(x,y,z)置換リスト
注:マクロの名前と左かっこの間にスペースはありません.
マクロのメリット:プログラムはもっと速いかもしれません. マクロはさらに同意します.
マクロの欠点:コンパイル後、コードは通常大きくなります. マクロのパラメータにはタイプチェックがありません. は、ポインタでマクロを指すことができません. マクロは、そのパラメータを複数回計算することができる.
ファイルの内容
じょうけんコンパイル
前処理命令に適用されるルール命令はすべて#で を開始するは、命令のシンボル間に任意の数のスペースと水平タブを挿入することができる. 命令は、継続することを明確に示さない限り、常に最初の改行で終了する. 命令は、プログラムの任意の場所に表示され得る. 注釈は、命令と同じ行に置くことができる.
未完待機・・・
3種類の前処理命令
マクロ定義
マクロは比較的よく用いられる前処理命令であり,ここでは主にパラメータ付きマクロについて論じる.
パラメータ付きマクロ(関数マクロ)は、次のように定義されます.
#define EXAMPLE(x,y,z)置換リスト
注:マクロの名前と左かっこの間にスペースはありません.
マクロのメリット:
マクロの欠点:
ファイルの内容
じょうけんコンパイル
前処理命令に適用されるルール
# include
# define PRINT_INT(n) printf(#n " = %d
", n)
# define PRINT_CHAR(s) printf(#s "%s
",s)
int main(int argc,char *argv[]){
int i = 4 , j = 5;
char str[] = "Ivan";
PRINT_INT(i/j);
PRINT_CHAR(str);
return 0;
}
未完待機・・・