41.1定义(5) 2High0和LoW(函数 Object Pascal的数组和其他语言的数组有一点不同,即数组不必以特定 的数为基准。例如可以从15开始声明一个具有3个元素的数组类型 Var A: Array[15.17]of Integer; Object Pascal的数组不一定从序号0或1开始的,因此在循环计算中需要 小心处理数组边界。系统提供了内建的Hgh和LowO)函数,这两个函数分 别返回数组变量或数组类型的上限值或下限值。建议使用LoWO和 Higho操 作数组,特别是在循环中,因为这样能使代码与数组范围无关,如果你改变 数组下标的范围声明,LowO和 Higho代码不会受影响。否则,如果代码中 有一个数组下标循环体,那么当数组大小改变时你就不得不更新循环体的代 码。因此在循环中用这两个函数做边界控制会使程序易于维护且不容易出错。 注意:使用标准函数LoWO和 HighO不会增加系统运行额外开销。因为在编译 时,它们已被转换成常数表达式,而不是实际函数调用,而函数 Lengthy 以返回数组的长度 Inprise Dephi
4.1.1 定义(5) 2. High()和Low()函数 Object Pascal的数组和其他语言的数组有一点不同,即数组不必以特定 的数为基准。例如可以从15开始声明一个具有3个元素的数组类型: Var A:Array[15..17] of Integer; Object Pascal的数组不一定从序号0或1开始的,因此在循环计算中需要 小心处理数组边界。系统提供了内建的High()和Low()函数,这两个函数分 别返回数组变量或数组类型的上限值或下限值。建议使用Low()和 High()操 作数组,特别是在循环中,因为这样能使代码与数组范围无关,如果你改变 数组下标的范围声明,Low()和 High()代码不会受影响。否则,如果代码中 有一个数组下标循环体,那么当数组大小改变时你就不得不更新循环体的代 码。因此在循环中用这两个函数做边界控制会使程序易于维护且不容易出错。 注意:使用标准函数Low()和High()不会增加系统运行额外开销。因为在编译 时,它们已被转换成常数表达式,而不是实际函数调用,而函数Length()可 以返回数组的长度
4.11定义(6) 见如下代码: var A array [15.17] of Integer; I :Integer; begin for i: =LOW(A)to High(a)do Ali: =i end 3.二维及多维静态数组 二维数组是指一个一维数组中的元素类型本身又是一个一维数组,声明 二维数组的一般形式为 ype <数组类型名称>=Aay<下标类型1>,<下标类型2>小f<基类型> 例如: Type RealArray=Array[1.20,1.100]of Real; 以把二维数组看做是一个矩阵,其中下标1是行,下标2是列,这样要 Inprise Dephi
4.1.1 定义(6) 3. 二维及多维静态数组 二维数组是指一个一维数组中的元素类型本身又是一个一维数组,声明 二维数组的一般形式为: Type <数组类型名称>=Array[<下标类型1>,<下标类型2>]of <基类型>; 例如: Type RealArray=Array[1..20,1..100]of Real; 以把二维数组看做是一个矩阵,其中下标1是行,下标2是列,这样要 见如下代码: var A:array[15..17] of Integer; i:Integer; begin for i:=Low(A) to High(A) do A[i]:=i; end;