タグ

ブックマーク / www.cqpub.co.jp (2)

  • フリーソフトウェア徹底活用講座(9)

    aniyan53
    aniyan53 2006/11/15
    可変個数引数をもつマクロ定義
  • フリーソフトウェア徹底活用講座(6)

    ここではC言語に関することだけ扱います.C++,Objective Cに関しては,回を改めて説明することにします. GNUのCには,ANSI規格にしたがっていない拡張機能がいくつかあります.たしかに便利なのですが,それに慣れてしまうと他の環境でプログラムが書けなくなってしまう恐れがあります.また,他の環境にポーティングすることが難しくなってしまいます. しかし,用途によっては拡張機能によってわかりやすくコーディングすることが必要かもしれません.したがって,どのように使用するかで拡張機能を排除するか許可するかを考えてください. もし排除する場合は,連載第3回目(2002年10月号)に記したように,-pedanticオプションを使用します. このオプションは厳密なANSI CおよびISO C++により要求される警告をすべて出力します.禁止されている拡張機能を使うプログラムをすべて拒絶します.正

    aniyan53
    aniyan53 2006/11/02
    マクロの定義がまずいだけじゃん?マクロ全体と引数それぞれをすべて括弧でくくるのは常識でしょうに。それでも(++a)などが二回以上評価されて副作用が起きるという例であれば納得するんだけど。
  • 1