忍者ブログ
C言語のマクロについてです。C言語のマクロには落とし穴が多いので、マクロをマスターして引っかからないようにしましょう。そしてC言語の達人になってください。
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

C言語の関数形式マクロの引数に、
渡さない方がよいものは、
インクリメント、デクリメントを
含む式だけではありません。

他にも、代入(+=, -=等)、入出力(getc()等)、
副作用を持つ関数の呼び出し等があります。

入出力の例を見てみましょう。

c = MAX(getc(f), c);

⇒ c = ((getc(f)) > (c) ? (getc(f)) : (c))

入力が2回行われるケースがありますね。
PR
ブログ内検索
バーコード
アーカイブ

Copyright © [ C言語のマクロ ] All rights reserved.
Special Template : 忍者ブログ de テンプレート
Special Thanks : 忍者ブログ
Commercial message : [PR]