6

fortranファイルのデバッグについて質問がありました。したがって、d(*)を使用して自動的に宣言しました。ただし、アレイのデバッグおよび監視中は、対応するアレイの最初の番号のみが表示され、他の60個は表示されません。(私はFortran95コンパイラとVisualStudio 2010を使用しています)

配列のすべての変数を表示するにはどうすればよいですか?


さて、ここにコードの1つの例があります:

iaは、いくつかの入力パラメーターに応じて、メインルーチンからの可変整数です。

subroutine abc(ia,a,b,c)
dimension d(*)

a = d(ia+1)
b = d(ia+2)
c = d(ia+3)

return 
end

ただし、デバッグには、d(*)の終わりを知っておくと便利です。

4

1 に答える 1

1

これを行う唯一の方法は、Watchウィンドウを使用して配列要素のウォッチを追加することです。あなたの配列が と呼ばれていると仮定するとd、次の式を見ると配列の値が表示されることがわかりました。

d(2)      ! which just shows the 2nd element in the array
d(1:10)   ! which shows the first 10 elements of the array
d(1:12:2) ! which shows the odd numbered elements of the array from 1 to 11

そしてもちろん、あなたが提案するような長さ60の配列の場合、式

d(61)

その配列アドレスが指すメモリ位置にある値が表示されます。

もちろん、実際には配列を として宣言する必要がありますd(:)。その場合、VS デバッガーは通常のLocalsウィンドウに配列全体を表示します。

于 2012-11-26T12:01:51.393 に答える