-
下標越界
鎖定
下標越界,計算機術語,只能在定義的範圍內訪問數組元素和集合成員。
- 中文名
- 下標越界
- 適用領域
- 數組
- 應用學科
- 嵌入式
下標越界簡介
此錯誤有以下的原因和解決方法。
下標越界越界
VB中的數組越界
引用了不存在的數組元素.
下標可能比下標範圍大或小,或是在應用程序中這一邊的數組沒有指定範圍。檢查數組的聲明以確認其上界和下界。若使用的是重新指定範圍的數組,應使用 UBound 和 LBound 函數來決定數組訪問。如果索引指定為變量,應檢查變量名的拼寫。
聲明數組時沒有指定元素的數目。例如,下列的代碼就會導致此錯誤:
Dim MyArray() As Integer
MyArray(8) = 234 ' 導致錯誤 9。
Visual Basic 並不會將沒有指定範圍的數組自動設為 0 – 10。相反必須使用 Dim 或 ReDim 來指定數組中元素的數目。
引用了不存在的集合成員。
試着使用 For Each...Next 結構代替指定元素下標。
使用速寫形式的下標,結果指定了錯誤的元素。
例如,當在集合上使用 ! 運算子時,! 自動指定了一個鍵。例如 object!keyname.value 和 object.item(keyname).value 是一樣的。在此例中,集合中如果 keyname 表示一個錯誤鍵,錯誤就會產生。若要改進此錯誤,在集合對象中使用正確的鍵名稱或索引。
詳細信息,可選取有問題的項目,並按下 F1 鍵。
C++中的下標越界
如:
int A[20];
cout<<A[-1];//A[-1]不存在
B=new int[20];//如果new操作失敗,或者沒有這一句,對B數組的訪問都會失敗.平台不同,造成的後果不一定相同.
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:26次歷史版本
- 最近更新: 张中2014