『プログラミング作法』 デバッグ
- デバッガ
- 有力な手がかりのある簡単なバグ
・我々の個人的な手法で言えば、我々がデバッガを使うのは、せいぜいスタックとレースを実行したり変数の値を1~2個表示させたりするときぐらいにすぎない。
・プログラムをステップ実行するよりも、もっと真剣に考えたり、重要な部分に出力文や自動チェックコードを追加したりするほうが効率的だと思う。
・そうは言ってもデバッガの意義は計りしれないので、もちろん自分のデバッグ七つ道具に入れておくべきだし、これが自分の一番頼れるツールになると思う。
おなじみのパターンを見つけよう
ローカル変数を初期化し忘れた場合にも特徴的なエラーが生じる。それは同じメモリ位置にそれまで記憶されていた値のゴミだ。
mallocやrealloc、newなどのアロケータによって返されるメモリもゴミだと思ったほうがいい。必ず初期化すること。