比如函数f_demo(arr:ptest) //ptest为一数组指针
传入的数组应该写成@a或者@a[0],这个应该没有问题吧?
那如何使用这个arr变量呢?比如在函数内部,如何让这个数组指针变成数组?

解决方案 »

  1.   

    你要在函数里用数组参数就这么写:
    Type 
      TArr = Array[0..10] of Integer;
    function f_demo(arr: TArr):Integer;
    begin
      arr[0] := 88;
      arr[i] := ...
      ...
    end;
    就行了,在函数内部直接使用。
      

  2.   

    juliens(星星球爱思纯^_^)同意 传递类就调用了类的地址
      

  3.   

    Type 
      TArr = Array[0..10] of Integer;
      PArr = ^TArr;function f_demo(arr: PArr):Integer;
    begin
      arr^[0] := 1;
      ...
      ...
    end;
      

  4.   

    如果函数参数为数组,传递的时候应该加@吗?
    比如星星所写的
    Type 
      TArr = Array[0..10] of Integer;
    function f_demo(arr: TArr):Integer;
    begin
      arr[0] := 88;
      arr[i] := ...
      ...
    end;那么调用这个函数的时候,
    var x:TArr;
    begin
    f_demo(x);//还是f_demo(@x)?
    end;