パスワードを忘れた? アカウント作成
451996 journal

pasasの日記: EOF と NULL 5

日記 by pasas

さっき本を読んでいてきがついたんだけど、Cでプログラムを書くときに、
0 を NULL と書いたり、-1 を EOF と書いたりしている人がいることが判明。
いや、動作は同じだけどさ。意味は違うのでやめて欲しいなぁ。
こういう書き方をしている本を初めて見た。
こういうプログラムを書く人って、多いのかな??

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • 少なくとも、NULLを0で代用する人は制御屋にはいない。はず。
    • いや、逆じゃない?
      #define NULL 0
      #define EOF -1
      がいやだってことでしょ?
      • その定義って stdio.h に書かれてるけど、それ使わずに勝手に
        0や-1を埋め込んでるって話じゃないのかな?
        マジックナンバーをハードコーディングしてるって話だと思った。
        親コメント
        • あー、ほんとだ。(本文読み直した)
          0と書くべきところでNULLと書いたりしてるわけだ。
          気持ち悪・・・
          C言語でそれやったら、warning出るはずなんだけど。
          親コメント
          • 久しぶりに日記を見たらコメントたくさんでびっくり。
            一応、日記を書いた張本人からコメント。

            > 0と書くべきところでNULLと書いたりしてるわけだ。

            というわけです。
            指摘されている通り warning が出るはずなんですが。(コンパイラ依存?)
            大学などの先生で、50歳代以上の人にこのように書く人がいる傾向があるようです。
            彼らがプログラムを勉強した当時の参考書なんかで、上記のように書いている本でもあったのかな??

            そういえば、僕が高専でプログラムを学んだときの担当の先生で、
            「warning はエラーではないから気にしなくてよい。」
            と断言していた先生がいたなぁ。その先生はその他にも問題がたくさんあったけど。
            親コメント
typodupeerror

にわかな奴ほど語りたがる -- あるハッカー

読み込み中...