Pascal 打包数组
-
打包数组
这些数组是位打包的,即每个字符或真值存储在连续的字节中,而不是使用一个存储单元,通常是一个字(4个字节或更多)。通常,字符和布尔值的存储方式应使每个字符或真值都使用一个存储单元(如单词)。这称为数据存储的解压缩模式。如果字符以连续字节存储,则存储将被充分利用。这称为数据存储的打包模式。Pascal 允许以打包模式存储数组数据。 -
声明打包数组
使用关键字packed array而不是array 声明压缩数组。例如-type pArray: packed array[index-type1, index-type2, ...] of element-type; var a: pArray;
以下示例声明并使用二维打包数组-
尝试一下program packedarray; var a: packed array [0..3, 0..3] of integer; i, j : integer; begin for i:=0 to 3 do for j:=0 to 3 do a[i,j]:= i * j; for i:=0 to 3 do begin for j:=0 to 3 do write(a[i,j]:2,' '); writeln; end; end.
编译并执行上述代码后,将产生以下结果-0 0 0 0 0 1 2 3 0 2 4 6 0 3 6 9