デバッグ機能

eclipseには、ユーザーの開発支援をおおなうための機能が多数ありますが、その中で最も利用頻度が高く、便利なのは、なんといってもデバッグ機能でしょう。

通常、プログラムの誤りのことを、バグ(bug)と言います。これは、英語で「虫」を表す言葉で、このバグをとることを、デバッガ(debug)と言います。デバッグ機能は、eclipseで、このデバッグを行うための機能なのです。ここでは、eclipseのデバッガを使って、C言語のデバッグ作業を行う方法を紹介します。

ブレークポイントの設置と、デバッグ機能の利用

eclipseのデバッガにはさまざまな機能がありますが、その中で基本になるのが、ブレークポイントと呼ばれるものです。これは、プログラムを任意の場所で停止させるために必要です。

ブレークポイントの設置

ブレークポイントの設置 プログラムの停止したい行の左側をクリックすると、青い丸が出ますこれが、ブレークポイントで、デバッグ時にこの場所でプログラムをストップさせるということを意味しています。

ブレークポイントは、プログラムの中に複数設置することができます。

すでにブレークポイントが設置されている部分をもう一度クリックすると、青い丸が消え、ブレークポイントが無効になります。

デバッグ開始

ブレークポイントを設置したら、次にプログラムを実行します。ただし、デバッグを行うときは、通常の実行方法とは違う方法でプログラムを実行します。これを、デバッグ実行といいます。eclipseでは、通常のプログラムの実行と、このデバッグ実行の二通りのプログラムの実行方法があります。

デバッグ実行を行いには、メニューの[実行]メニューから、[デバッグ]か、画面上側にある、以下のボタンをクリックすれば、開始します。

デバッグ実行  ← デバッグボタン

デバッグ作業

ブレークポイントでの処理の停止 デバッグが開始されると、プログラムの先頭に青い矢印が出現します。この矢印は、「ここまでプログラムを実行してきている」ということを表しています。

これにより、画面がデバッグモードに移行します。

この画面での細かい操作は、画面上にある以下のボタンで操作します。

デバッグの処理ボタン一覧

実行ボタンボタンを押すと、ほんかくてきにデバッグ開始です。
デバッグの開始

これにより、青い矢印が、最初のブレークポイントまで移動します。

ブレークポイントが複数ある場合、実行ボタンボタンを押すと、次のブレークポイントまで移動します。

一行ごとの実行(ステップオーバー)

一行ごとの実行(ステップオーバー) まずは、ブレークポイントで停止位置した位置から、プログラムを一行ずつ実行する方法を紹介します。これを、ステップオーバーといいます。

これは、ステップオーバーのボタンボタンを押すことにより実行されます。

ステップオーバーをすると、プログラムの実行位置を示す青い矢印は、一行ずつ次の行へ移動していきます。

ステップオーバーを用いれば、プログラムの実行結果を一行ごとに検証することが可能になります。
デバッグは、ストップボタンボタンを押せば、終了することができます。

関数の中の処理へ入る(ステップイン)

関数の中の処理へ入る(ステップイン) 処理の中に関数があった場合、その中にはいることができます。これをステップインといいます。

これは、ステップインのボタンボタンを押すことにより実行されます。

ステップイン後は、ステップオーバーで、処理を継続します。関数のなかに関数の処理があれば、さらに深い階層までステップインしていくことが可能です。

関数の中の処理から出る(ステップリターン)

関数の中の処理から出る(ステップリターン) ステップインで入った関数の中から外に出る処理のことを、ステップリターンといいます。

これは、ステップリターンのボタンボタンを押すことにより実行されます。

ステップアウトにより、ステップインの時に呼び出した関数処理の次の処理に戻ることができます。