C/C++プロジェクトのデバッグのチュートリアル

この短いチュートリアルでは、NetBeans IDE 7.2のC/C++プロジェクトをデバッグするための機能の一部を学ぶことができます。

内容

このページの内容は、NetBeans IDE 7.2に適用されます
要件
サンプル・プロジェクトの作成
ブレークポイントの作成
デバッグ・セッションの開始
アプリケーションの状態の検査

要件

このチュートリアルに従うには、次のソフトウェアとリソースが必要です。

ソフトウェアまたはリソース 必須バージョン
NetBeans IDE バージョン7.2とNetBeans C/C++プラグイン・モジュール
Java Developer Kit (JDK) バージョン7

必要なソフトウェアのダウンロードとインストールについては、NetBeans IDE 7.2のインストール手順およびC/C++/Fortran向けのNetBeans IDEの構成を参照してください。

サンプル・プロジェクトの作成

C/C++を使用するNetBeans IDEでは、gdbデバッガが使用され、プロジェクトをデバッグするための多数の機能が提供されています。Quoteプロジェクトを使用して、これらの機能を確認します。まだこのプロジェクトを作成していない場合は、次の操作を実行します。

  1. 「ファイル」>「新規プロジェクト」を選択します。
  2. プロジェクトのウィザードで「サンプル」カテゴリ、「C/C++」サブカテゴリを順番に展開します。
  3. 「アプリケーション」サブカテゴリを選択して、「Quote」プロジェクトを選択します。「次」をクリックして、「終了」をクリックします。

ブレークポイントの作成

デバッグ・セッションを開始することなく、いつでもコードにブレークポイントを作成したり、操作したりできます。

行ブレークポイントの作成と除去

  1. Quote_1プロジェクトのquote.ccファイルを開きます。
  2. 行161 (response=readChar("Enter disk module type: (S for single disks, R for RAID; Q - exit)", 'S');)の横の、「ソース・エディタ」ウィンドウの左マージンをクリックすることによって行ブレークポイントを設定します。赤く強調表示されている行は、ブレークポイントが設定されていることを示します。
    「ソース・エディタ」ウィンドウのスクリーンショット
  3. ブレークポイントは、左マージン内のアイコンをクリックすることによって除去できます。
  4. 「ウィンドウ」>「デバッグ」>「ブレークポイント」を選択し、「ブレークポイント」ウィンドウを開きます。ウィンドウに行ブレークポイントが一覧表示されます。
    「ブレークポイント」ウィンドウのスクリーンショット

関数ブレークポイントの作成

  1. 「デバッグ」>「新規ブレークポイント」([Ctrl]+[Shift]+[F8])を選択して「新規ブレークポイント」ダイアログ・ボックスを開きます。
  2. 「ブレークポイント・タイプ」ドロップダウン・リストでタイプを「関数」に設定します。
  3. 「関数名」テキスト・フィールドに「Customer::GetDiscount」を入力します。「OK」をクリックします。
    「新規ブレークポイント」ダイアログ・ボックスのスクリーンショット
  4. 関数ブレークポイントが設定され、「ブレークポイント」ウィンドウの一覧に追加されます。
    「ブレークポイント」ウィンドウのスクリーンショット

デバッグ・セッションの開始

デバッグ・セッションを開始すると、IDEによってgdbデバッガが起動され、そのデバッガ内でアプリケーションが実行されます。デバッガ・ウィンドウが自動的に開き、「出力」ウィンドウにデバッガの出力が出力されます。

  1. Quote_1プロジェクトのプロジェクト・ノードを右クリックし、「デバッグ」を選択することによってプロジェクトのデバッグ・セッションを開始します。デバッガが起動し、アプリケーションが実行されます。
  2. 「ウィンドウ」>「デバッグ」>「セッション」を選択して「セッション」ウィンドウを開きます。開いたウィンドウにデバッグ・セッションが表示されます。

アプリケーションの状態の検査

  1. Quote_1アプリケーションは、「出力」ウィンドウ上に入力を求めるメッセージを出力します。
  2. 「Enter customer name:」プロンプトの後に顧客名を入力します。
  3. 前に設定した関数ブレークポイント位置でアプリケーションが停止します。「ブレークポイント」ウィンドウに、前に設定した2つのブレークポイントが表示されます。関数ブレークポイントのブレークポイント・アイコンの上に、緑色のプログラム・カウンタの矢印が表示されます。
    「ブレークポイント」タブのスクリーンショット
  4. 「ウィンドウ」>「デバッグ」>「コール・スタック」を選択して「コール・スタック」ウィンドウを開きます。コール・スタックに3つのフレームが表示されます。
    「コール・スタック」タブのスクリーンショット
  5. 「変数」ウィンドウを開いて、変数が1つ表示されていることを確認します。「変数」タブの左の列で先頭のボタンをクリックして、ローカル変数のかわりに「Autos」を表示します。
  6. 展開アイコンをクリックし、構造を展開します。
    「変数」タブのスクリーンショット
  7. ツールバーにある「続行」ボタンをクリックします。GetDiscount関数が実行され、外部のI/Oウィンドウに顧客の割引額が表示されます。その後、入力が求められます。
  8. このプロンプトに対して入力を行います。次のブレークポイント、すなわち前に設定した行ブレークポイントでプログラムが停止します。quote.ccファイルでは、プログラムが停止した行を示すブレークポイントのアイコンの上に、緑色のプログラム・カウンタの矢印が表示されます。

    「ソース・エディタ」のスクリーンショット

  9. 「変数」タブをクリックし、変数の一覧を確認します。
    「ローカル変数」タブのスクリーンショット
  10. 「コール・スタック」タブをクリックし、スタック内にフレームが1つあることを確認します。
  11. 「ウィンドウ」>「デバッグ」>「レジスタ」を選択します。「レジスタ」ウィンドウが開き、現在のレジスタの内容が表示されます。
    「レジスタ」ウィンドウのスクリーンショット
  12. 「ウィンドウ」>「デバッグ」>「逆アセンブリ」を選択します。「逆アセンブリ」ウィンドウが開き、現在のソース・ファイルのアセンブリ命令が表示されます。
    逆アセンブリ・ウィンドウのスクリーンショット
  13. ツールバーにある「続行」ボタンをクリックし、プログラムが完了するまで、「出力」ウィンドウのプロンプトに対応して入力を続けます。[Enter]を押してプログラムを終了するとデバッグ・セッションが終了します。プログラムの実行が完了する前にデバッグ・セッションを終了するには、「セッション」タブでセッションを右クリックし、「終了」を選択するか、「デバッグ」>「デバッガ・セッションを終了」を選択します。
get support for the NetBeans

Support


By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2015, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo