デバッガーでの Fortran データ型の表示

次に,Fortran の複数のデータ型に当てはまる一般的なヒントを示します。

「Data Tips」,「Local Variables」ウィンドウ,または「Watch」ウィンドウについての詳細は,「Squares サンプル・プログラムのデバッグ」を参照してください。

デバッグ中の Array Viewer の使用方法については,「デバッガーでの Array Viewer の使用」を参照してください。

以下では,「Watch」ウィンドウに次のデータを指定する方法を説明します。

「Watch」ウィンドウを表示するには,以下を行います。

  1. 「View」メニューで「Debug Windows」にカーソルを移動します。

  2. 表示されるサブメニューから「Watch」をクリックします。

部分配列の指定

「Watch」ウィンドウで部分配列を指定することができます。たとえば,次のように宣言された配列を考えます。

	integer foo(10)

「Watch」ウィンドウで次の文を指定すると,2,5,および 8 番目の要素を見ることができます。

	foo(2:10:3)

文字配列を扱うときには,この構文を文字部分列の指定と組み合わせることができます。次の配列宣言を考えます。

	character*8 chr_arr(10)

「Watch」ウィンドウで次の文を指定すると,配列要素 2 ~ 5 の 3 ~ 8 文字目から構成される文字部分列を表示することができます。

	chr_arr(2:5)(3:8)

この機能は,配列ポインタ,形状引継ぎ配列,割付け配列,および大きさ引継ぎ配列を含む任意の形式の配列でサポートされます。

下限,上限,または増分を指定するときには,任意の有効な整数式を使用することができます。下限を省略すると,配列の下限が使用されます。上限を省略すると,配列の上限が使用されます。たとえば,次の宣言を考えます。

	integer foo(10)

配列要素を表示するには,以下のようにします。

モジュール変数の指定

「Watch」ウィンドウでモジュール変数を表示するには,モジュール名の後に「::」を付け,さらに変数名を続けます。

たとえば,モジュール foo の変数 bar を見るには,次の式を指定します。

	foo::bar

書式指定子の指定

「Watch」ウィンドウでは,書式指定子を使って,変数をさまざまなデータ書式で表示することができます。

たとえば,プログラム中に foo という REAL 変数があった場合,foo を各種の浮動小数点表記 (「Watch」ウィンドウで foo,ffoo,g,または foo,e と入力) で表示したり,整数 (foo,i または foo,d),16 進値 (foo,x),8 進値 (foo,o) などとして表示することができます。

「Watch」ウィンドウの変数の表示書式は,次表の書式指定シンボルを使って変更できます。

シンボル 書式 表示
d,i 符号付き 10 進整数 0xF000F065 -268373915
o 符号なし 8 進整数 0xF065 0170145
x,X 16 進整数 61541 (10 進) #0000F065
f 符号付き浮動小数点 3./2. 1.5000000
e 符号付き科学表記 3./2. 0.1500000E+01
g 符号付き浮動小数点と符号付き科学表記の内の短い方 3./2. 1.500000
c 単一文字 0x0065 'e'
s 文字列 0x0012fde8 "Hello world"

書式指定シンボルを使用するには,変数名を入力し,その後にコンマと適切なシンボルを入力します。たとえば,var の値が 0x0065 であり,この値を文字書式で表示したい場合は,「Watch」ウィンドウのタブの「Name」フィールドに var,c と入力します。ENTER を押すと,文字書式の値が表示されます。

	var,c = 'e'

次表の書式指定シンボルを使うと,メモリー位置の内容を書式指定することができます。

シンボル 書式 表示
ma 64 個の ASCII 文字 0x0012ffac.4...0...".0W&.......1W&.0.:W..1...."..1.JO&.1.2.."..1...0y....1
m 16 バイトの 16 進値と 16 個の ASCII 文字 0x0012ffac B3 34 CB 00 84 30 94 80 FF 22 8A 30 57 26 00
00 .4...0...".0W&..
mb 16 バイトの 16 進値と 16 個の ASCII 文字 0x0012ffac B3 34 CB 00 84 30 94 80 FF 22 8A 30 57 26 00
00 .4...0...".0W&..
mw 8 個のワード 0x0012ffac 34B3 00CB 3084 8094 22FF 308A 2657 0000
md 4 個のダブルワード 0x0012ffac 00CB34B3 80943084 308A22FF 00002657

メモリー位置の書式指定シンボルでは,位置に評価される任意の値または式を入力することができます。

書式指定文字は式の後ろに指定することもできます。

	rep+1,x
	alps[0],mb
	xloc,g
	count,d


注意:書式指定シンボルは,構造体,配列,ポインタ,およびオブジェクトに対しては,展開されない変数としてしか適用できません。変数を展開すると,指定した書式指定はすべての要素に適用されます。書式指定シンボルを個々の要素に適用することはできません。