3

次の行に沿ったコードがあります。

redim a(1 to N)
for i = 1 to N
    a(i) = someFunction(i)
Next i

実行すると、"Run-time error 6: Overflow". そして、ループ内の行がa(i) = someFunction(i)強調表示されたブレーク モードに入ります。エラーを見つけるために、その関数にステップ インし、1 行ずつステップ オーバーします。エラーはありません。正常に動作し、続行します。この方法でコードを実行し、ブレーク モードのsomeFunctionままにして、一度に 1 つの呼び出しにステップ インする限り、動作しますが、通常の実行に戻るとすぐに、オーバーフロー エラーが返されます。

オーバーフローを取り除く方法を知っている人はいますか?

4

2 に答える 2

1

変数を宣言した方法を確認できるように、関数全体を提供する必要があります。

このエラーは、変数の宣言が間違っていることが原因です。1 つ以上の変数に値を受け入れる容量がありません (例: 変数 i を Integer として宣言したため、次のような値を受け入れることができません: i=55000; integer の最大値は 32000 から 32800 程度です)...

于 2012-11-09T17:35:33.050 に答える
0

助けてくれてありがとう、私は問題が何であるかを理解しました。オーバーフローの原因でしsomeFunctionた。ブレーク モードで発生しなかった理由はわかりませんが、原因を修正し、現在は機能しています。

于 2012-11-09T21:28:31.677 に答える