比如说我要将一个指针变量pointer指向一个动态的结构体的数组 array1: array of TRCORD;应该怎么做?TRCORD是自己定义的一个数据结构。

解决方案 »

  1.   

    var
        p:pChar;
    begin
        p:=@arrayl[0];
      

  2.   

    var
        p:pChar;
        vRect:^TRCORD;
    begin
        vRect:=Pointer(arrayl[0]);
        vRect.a:=XXXX;
        vRect.b:=XXXX;
        ....
    end;
      

  3.   

    可能我没太说清楚,pointer是一个函数返回的一个结构体的动态数组的指针。我现在怎么得到这个动态数组所有的值。
      

  4.   

    比如:  结构体名称为:TRECORD 函数为TEST 指针变量为pointer
    如下:
       pointer := TEST(...);  //这个指针是指向一个结构体数组的我现在怎么得到这个数组的所有数据呢?
      

  5.   

    你可以用循环语句遍历整个数组
    var
        p:pChar;
        vRect:^TRCORD;
        i:integer;
    begin
        for i:=0 to Length(YourRects) do
        begin
          vRect:=Pointer(YourRects[0]);
          vRect.a:=XXXX;
          vRect.b:=XXXX;
          ....
        end;
    end;
      

  6.   

    更正一下:
          vRect:=Pointer(YourRects[i]);
      

  7.   

    去這裡看數組指針的用法
    http://community.csdn.net/Expert/topic/3942/3942925.xml?temp=.4776728
      

  8.   

    TO  victor_yang(victoryang):YourRects 是代表什么?
    我现在只知道函数返回的数组的指针啊。麻烦再指教一下。