若一个数组所需的存储空间的大小在编译时就已知道,则称它为确定数组,否则称为可变数组。
  例 :
  procedure A(m,n:integer);
  begin real z;
      array B[m:n];
     begin
     · ·
     · end;
  end;
  B[m:n] 为可变数组,B的上下界是过程A的实参,A被调用时才能确定。动态存储管理技术有两种方式:栈式(stack)和堆式(heap)。下面简述这两种方式的原则。