2010-05-16 77 views
0
program s; 
    type info = record 
     name, surname: string; 
     min, sec: integer; 
    end; 
    arrays = array[2..50] of info; 

    var A: arrays; 
begin 
    A[1].name := 'name'; 
end. 

這是什麼問題?它給我範圍檢查錯誤,我不知道那是什麼。Pascal error with array

+0

它在哪一行給你一個範圍檢查? – bmargulies 2010-05-16 16:06:45

+0

第9行....... – 2010-05-16 16:08:17

+0

順便說一下,有人可以告訴我,Nick D是如何編輯的? – 2010-05-16 16:14:04

回答

6

它給你一個錯誤,因爲要創建從索引陣列2〜50

所以,您可以在第一元件將是2.

begin 
    A[2].name := 'name'; 
end. 

範圍檢查錯誤意味着你正嘗試訪問一個無效位置的數組(因此超出範圍)。帕斯卡,不像其他語言,如果你這樣做會引發編譯錯誤。

+0

哦,我的上帝,我是多麼愚蠢。謝謝。 – 2010-05-16 16:08:55