Dynamic array
优质
小牛编辑
125浏览
2023-12-01
在动态数组类型的情况下,数组的初始长度为零。 必须使用标准SetLength函数设置数组的实际长度,该函数将分配用于存储数组元素的必要内存。
声明动态数组
要声明动态数组,请不要提及数组范围。 例如 -
type
darray = array of integer;
var
a: darray;
在使用数组之前,必须使用setlength函数声明大小 -
setlength(a,100);
现在,数组a的有效数组索引范围为0到99:数组索引始终从零开始。
以下示例声明并使用二维动态数组 -
program exDynarray;
var
a: array of array of integer; (* a 2 dimensional array *)
i, j : integer;
begin
setlength(a,5,5);
for i:=0 to 4 do
for j:=0 to 4 do
a[i,j]:= i * j;
for i:=0 to 4 do
begin
for j:= 0 to 4 do
write(a[i,j]:2,' ');
writeln;
end;
end.
编译并执行上述代码时,会产生以下结果 -
0 0 0 0 0
0 1 2 3 4
0 2 4 6 8
0 3 6 9 12
0 4 8 12 16