掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
関数マクロの引数にマクロを使うには? (ID:63999)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> 上記のようにすることで目的のマクロができました。 > でも、どうしてこれでうまくいくのかわかりません。 > たまたまコンパイラがこうゆう仕様だからでしょうか? 標準仕様どおりでよいと思います。 JIS X 3010 6.10.3.1 実引数置換 | 実引数の中に含まれるすべてのマクロの展開後、置換要素並びの中の | 仮引数を対応する実引数で置き換える。ただし、次の仮引数は除く。 | - #前処理字句又は##前処理字句が前にある仮引数 | - ##前処理字句が後に続く仮引数 >#define TOSTR2(n) #n これは #n という使われ方をしているので、 実引数のマクロ展開は行われない。 > #define TOSTR(n) TOSTR2(n) これは n という使われ方をしているので、 実引数のマクロ展開が行われる。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.