请问那位大侠知道,在访问内存时,得到了数组的指针,怎样才能知道这个数组的大小!谢谢

解决方案 »

  1.   

    //Delphi Help
    function Sum( var X: arrayof Double): Double;
    var
      I: Word;
      S: Real;
    begin
      S := 0; { Note that open array index range is always zero-based. }
      for I := 0 to High(X) do S := S + X[I];
      Sum := S;
    end;procedure TForm1.Button1Click(Sender: TObject);var
      List1: array[0..3] of Double;
      List2: array[5..17] of Double;
      X: Word;
      S, TempStr: string;
    begin
      for X := Low(List1) to High(List1) do
          List1[X] := X * 3.4;
      for X := Low(List2) to High(List2) do
          List2[X] := X * 0.0123;
      Str(Sum(List1):4:2, S);
      S := 'Sum of List1: ' + S + #13#10;
      S := S + 'Sum of List2: ';
      Str(Sum(List2):4:2, TempStr);  S := S + TempStr;
      MessageDlg(S, mtInformation, [mbOk], 0);end;
      

  2.   

    Low()取得数组的第一个元素,High()取得数组的最后一个元素