インテル® Fortran コンパイラー 16.0 ユーザー・リファレンス・ガイド
このトピックは、Windows* 向けの Fortran アプリケーションにのみ適用されます。
ここでは、Microsoft* Visual Studio* デバッガーを使用して、ファイルおよびデータのブレークポイントを設定する方法について説明します。次の内容が含まれます。
ファイル・ブレークポイントおよびデータ・ブレークポイントに加えて、Visual Studio* デバッガーでは次の機能をサポートしています。
アドレス・ブレークポイント
関数ブレークポイント
トレースポイント
これらの追加機能については、使用しているバージョンの Microsoft* Visual Studio* のドキュメントを参照してください。
[Breakpoints (ブレークポイント)] ウィンドウで、現在設定されているブレークポイントをすべて表示することができます。設定されているすべてのブレークポイントを [Breakpoints (ブレークポイント)] に表示するには、次の操作を行います。
[Debug (デバッグ)] メニューで [Windows (ウィンドウ)] > [Breakpoints (ブレークポイント)] を選択します。
ブレークポイント・リストを上下にスクロールして、ブレークポイントを表示します。有効なブレークポイントのチェックボックスはオンで、無効なブレークポイントのチェックボックスはオフです。全種類のブレークポイントが表示されます。
ファイル・ブレークポイントを使用して、プログラムがファイル内の指定した場所に到達したら、プログラムの実行を中断することができます。ファイル・ブレークポイントの状態は、ソースウィンドウの左側に表示されるいくつかの記号によって表されます。
有効なブレークポイントは赤丸で表示されます。 |
|
無効なブレークポイントは、白丸で表示されます。 |
|
デバッグ中、現在アクティブなブレークポイントは、黄色い矢印の赤丸で表示されます。 |
ファイル・ブレークポイントを使用するデバッグセッションについて説明したサンプルが用意されています。「Squares サンプルプログラムのデバッグ」を参照してください。
ファイル・ブレークポイントを設定する (有効にする) 方法:
ソリューションでソースファイルを開きます。
ソースウィンドウで、ブレークポイントを設定する行をクリックします。
次のいずれかを行います。
その行の左側をクリックするか、F9 キーを押します。ブレークポイントを設定すると、デフォルトで有効になります。
その行で右クリックし、ポップアップ・メニューから、[Insert Breakpoint (ブレークポイントの挿入)] を選択します。
ファイル・ブレークポイントを無効にする方法:
ソースウィンドウで、無効にするファイル・ブレークポイントを含む行をクリックします。
次のいずれかを行います。
その行で右クリックし、ポップアップ・メニューから、[Disable Breakpoint (ブレークポイントを無効にする)] を選択します。
[Debug (デバッグ)] メニューから [Windows (ウィンドウ)] > [Breakpoints (ブレークポイント)] を選択して、[Breakpoints (ブレークポイント)] ウィンドウを表示します。ブレークポイントのチェックボックスをオフ (無効) にします。
ファイル・ブレークポイントを削除する方法:
ソースウィンドウで、削除するファイル・ブレークポイントを含む行をクリックします。
次のいずれかを行います。
その行の左側をクリックするか、F9 キーを押します。ブレークポイントが無効の場合、F9 キーをもう一度押して削除します。
その行で右クリックし、ポップアップ・メニューから、[Delete Breakpoint (ブレークポイントの削除)] を選択します。
[Debug (デバッグ)] メニューで [Windows (ウィンドウ)] > [Breakpoints (ブレークポイント)] を選択します。[Breakpoints (ブレークポイント)] ウィンドウの [Name (名前)] カラムでブレークポイントを選択し、[Delete (削除)] ボタン ("X" と似たアイコン) をクリックします。
ファイル・ブレークポイントが設定されている場所を参照する方法:
[Debug (デバッグ)] メニューで [Windows (ウィンドウ)] > [Breakpoints (ブレークポイント)] を選択します。
[Breakpoints (ブレークポイント)] ウィンドウで、ファイル・ブレークポイントをクリックします。
[Go To Source Code (ソース コードへ移動)] ボタンをクリックします。
この操作により、ブレークポイントが設定されている行番号または関数 (またはサブルーチン) 名にカーソルが移動します。関数 (またはサブルーチン) 名の場合は、デバッガーが実行中である必要があります。
(データ・ブレークポイントを含む) すべてのブレークポイントを削除する方法:
[Debug (デバッグ)] メニューから、[Delete All Breakpoints (すべてのブレークポイントの削除)] を選択します。
ファイル・ブレークポイントに条件を追加すると、プログラムはその位置に到達し、かつ、指定された条件が満たされるまで (例えば、配列要素の値が 1 よりも大きくなるまで) 実行されます。
ブレークポイントに条件を追加するには、次の操作を行います。
ファイル・ブレークポイントを設定します。
関連する行を右クリックして、[Breakpoints (ブレークポイント)] > [Condition... (条件...)] を選択します。
[Breakpoint Condition (ブレークポイントの条件)] ダイアログボックスが表示されます。
[Breakpoint Condition (ブレークポイントの条件)] ダイアログボックスで指定する条件は、そのブレークポイントの範囲内のローカル変数またはグローバル変数に関連していなければなりません。条件が正しく検出されるように、[Condition (条件)] フィールドで適切な Fortran 構文を指定する必要があります。次の例について考えてみます。
ローカル変数 RecNum が 7520 に達したときに実行を中断するには、次の条件を入力します。
RecNum == 7520
複数の条件を指定することもできます。RecNum が 7520 以上で変数 Var2 が 90 の場合に実行を中断するには、次の条件を入力します。
RecNum >= 7520 .and. Var2 == 90
or 条件も使用できます。次に例を示します。
Var1 == 3.14 .or. Var2 < 500.0
プログラムの実行時に、選択した位置で指定した条件が満たされた場合、メッセージボックスが表示されます。ループの一部でブレークポイントを設定すると、デバッガーが別の指定条件を検出するまで、継続処理は実行を続けます。別の条件が検出されない場合、デバッガーは次のブレークポイントまで続行し、次のブレークポイントがない場合は、ループの最後まで続行します。
条件が定義されているファイル・ブレークポイントを無効または有効にする方法、および削除する方法については、ファイル・ブレークポイントの一般的な操作方法に従ってください。[Condition (条件)] フィールドのチェックボックスで条件を有効/無効にできます。
データ・ブレークポイントを使用して、特定の変数の値が変更されたときに、プログラムの実行を中断することができます。データ・ブレークポイントは、変数の値が変更されたとき、または、指定した条件が一致したとき (条件が定義されている場合)、メッセージボックスを表示します。ファイル・ブレークポイントとは異なり、データ・ブレークポイントは特定のソース位置とは関連していません。
Visual Studio* IDE では、Fortran に対してデータ・ブレークポイントのサポートを提供していませんが、Fortran プログラムでデータ・ブレークポイントを使用することは可能です。この場合、Microsoft* Visual C++* によって提供される既存のメカニズムを使用して処理されます。そのため、変数名および条件には Fortran 構文ではなく、Visucal C++* 構文を使用する必要があります。次のガイドラインが適用されます。
スカラー変数の変数名には、大文字を使用します。変数名を大文字にすることで、Visual C++* は変数をデバッグ情報から検索して、適切なブレークポイントを適用できます。
配列や型については、[Watch (ウォッチ)] ウィンドウで Fortran の LOC 組込み関数を使用するか、または [Immediate (イミディエイト)] ウィンドウを使用して、変数のアドレスを取得します。このアドレスは、変数のエディットボックスで使用します。
例えば、配列要素 a(5) にデータ・ブレークポイントを設定するには、次の操作を行います。
[Debug (デバッグ)] > [Windows (ウィンドウ)] > [Immediate (イミディエイト)] を選択します。
[Immediate (イミディエイト)] ウィンドウに loc(a(5)) と入力し、Enter キーを押します。
配列要素のアドレスが表示されます。このアドレスは、現在の表示モードに基づいて 10 進数または 16 進数で表示されます。10 進数の場合、この値を [Address (アドレス)] フィールドに入力します。16 進数の場合、この値を Fortran の 16 進表記 (#nnnnnnnn) ではなく、Visual C++* の 16 進表記 (0xnnnnnnnn) で [Variable (変数)] フィールドに入力します。
現在のルーチン (現在の有効範囲) のデバッグには、次の操作を行います。
データ・ブレークポイントを設定するには、次の操作を行います。
デバッグを開始します。
[Debug (デバッグ)] メニューから、[New Breakpoint (ブレークポイントの作成)] > [New Data Breakpoint... (新しいデータ ブレークポイント...)] を選択します。
[Address (アドレス)]、[Byte Count (バイト数)]、[Language (言語)] (C++ を指定) を入力します。
このブレークポイントに条件を設定する場合は、[Breakpoints (ブレークポイント)] ウィンドウでブレークポイントを右クリックして、[Condition... (条件...)] を選択します。
データ・ブレークポイントを無効または有効、および削除するには:
[Debug (デバッグ)] メニューで [Windows (ウィンドウ)] > [Breakpoints (ブレークポイント)] を選択します。
データ・ブレークポイントを無効または有効にするには、データ・ブレークポイントの左側のチェックボックスを使用します (チェックマークは有効であることを示します)。
データ・ブレークポイントを削除するには、データ・ブレークポイントを選択して、[Delete (削除)] ボタンをクリックします。
特定の条件下では、デバッガーによりデータ・ブレークポイントが無効にされる可能性があります。この場合、有効にするか、解除してから再設定する必要があります。
(ファイル・ブレークポイントを含む) すべてのブレークポイントを削除する方法:
[Debug (デバッグ)] メニューから、[Delete All Breakpoints (すべてのブレークポイントの削除)] を選択します。