zunbe |
||
|
胎教音楽 | そろそろ検索の不具合をなんとかしてよ→マイクロソフト |
2005/09/24
学校などでC言語を習うと、たいていこんな風に教わる。 ・コンパイル時に出る警告は無視していい。 これは、とんでもない話である。 -- このプログラムは、バグがある。 VC++ で、/W 系の警告オプションを指定して、このプログラムをコンパイルすると以下の警告が出力される。 ・close() の第1引数が実引数と仮引数で異なっている。 このソースのままコンパイル、リンクしても、もちろん、正常に動作しない。 ソフトウェアを開発する場合、可能な限り厳しい警告オプションを設定し、可能であれば警告をエラーとみなすオプションを設定するべきである。 /W4 /WX /W4 は警告レベル最大のオプション、/WX は警告をエラーとみなすオプションである。 初心者にこういう話をすると、必ず眉をひそめてこう言う。 「警告は無視していいのではないですか?」 たしかに、学校ではそう教わったかもしれない。 警告を無視してコンパイルすれば、後で自分が泣きを見る事になる。 そもそも、警告を無視しようとする発想がわからない。 ちなみに、この説明をして、「警告を排除しろ」と指示すると、たいていの初心者は以下の様にプログラムを修正する。 -- 困ったものである。
投稿者 zunbe : 2005/09/24 08:49:11
|
|
|