Borland Pascal 中的数组长度

问题描述 投票:0回答:1

我不明白数组范围如何真正限制我,例如这个程序

program Test;
  var
    a:integer;
    c:array[1..5] of integer;
  begin
    for a:=0 to 8 do begin
      read(c[a]);
    end;
    for a:=0 to 8 do begin
      writeln(c[a]);
    end;
end.

用于输入

1 2 3 4 5 6 7 8 9

1 2 3 4 5 6 7 8 9

(由于

writeln
而全部位于新行中),但
array
范围应从
1
5
。那么它如何接受更多的值呢?我也尝试过
Setlength(c,5)
但同样的故事。

arrays delphi freepascal turbo-pascal
1个回答
3
投票
  for a:=low(c) to high(c) do
   <code>

较新的 delphi 也可能允许长度,定义为 high(c)-low(c)+1

© www.soinside.com 2019 - 2024. All rights reserved.