当前位置: 首页 > 文档资料 > Pascal 中文教程 >

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