C言語学習ポータル(無料版) 学習コンテンツ 用語辞典 マクロの罠

マクロの罠とは

読み:まくろのわな・C言語用語辞典

関数形式マクロで引数を括弧で囲まないと、意図しない優先順位で展開されてしまう典型的な事故のこと。書き方の作法で防げる。SQUARE(1+2)が9ではなく5になってしまう、といった典型例が知られている。

関連する用語

関数形式マクロかんすうけいしきまくろ

#define SQUARE(x) ((x)*(x))のように、引数を取って処理を展開するマクロのこと。括弧の付け忘れが罠になりやすい。呼び出し方は関数に似ているが、実際は単なる文字列の置き換えである点に注意。

マクロ展開まくろてんかい

プリプロセッサがマクロの呼び出し箇所を、定義された内容にそのまま置き換える処理そのもののこと。コンパイルより先に行われる。展開後のコードはコンパイラエラー時にも表示されることがあり、読み解く力が求められる。

アプリの用語集で引く(無料・登録不要) 用語辞典の目次へ

もっと先へ:ポインタ・メモリ・ファイル入出力・セキュアコーディングを含む全26トラックと、段位検定・模試のフルセットは完全版に収録しています。

完全版(BOOTH)を見る