VarArrayHighBound 用来检查 Variant 数组的最大下标值。
IntToHex 将整数转换为16进制字符串。

解决方案 »

  1.   

    var
      a: OleVariant;
      int: Integer;
    begin
      a: = VarArrayCreate([1,100],VarVariant);
      a[12] := 10;
      ShowMessage(a[10]);           //空
      ShowMessage(a[12]);           //10
      ShowMessage(IntToStr(a[10])); //0
      int := VarArrayHighBound(a,1);//返回a的第一维最大下标
      ShowMessage(IntToStr(int));   //100
      ShowMessage(IntToHex(100,3)); //返回100的十六进制表示,长度为3,不足以0代替,返回064
    end;
      

  2.   

    function IntToHex(Value: Integer; Digits: Integer): string; overload;
    function IntToHex(Value: Int64; Digits: Integer): string; overload;
    将整数化为16进制数的字符串形式,前一个参数为要转换的整数,后一个参数是
    转换成16进制的位数。
    function VarArrayHighBound(const A: Variant; Dim: Integer): Integer;
    区的可变数组的维数或范围,第一个参数为具体的数组,第二个参数是最左边从那里开始!(有1,或是2等等);