var
  FArray: array of string;
....  SetLength (FArray , 10);
  ....;
  ....;
  如果我要分别取得
  FArray[0],
  FArray[1],
  FArray[2],
  ……
  的地址,应该怎么做?
是用PChar (FArray[0]), 还是Addr (FArray[0]), 还是@FArray[0],或是别的
什么方法呢?这些方法有何不同?能解释吗?

解决方案 »

  1.   

    @FArray就可以啦
    @FArray=addr(FArray)
      

  2.   

    我现在有个函数
    例如,
    procedure myfunction (input: PChar; out output: PChar);那个数组是用来保存输出变量的。
    可是,输出数据时却会越界!我不明白。
    到底应该怎么表示呢?
    调用如下:
    var
      ArrayII: array [0..10] of string;
      i: Integer;
    ...
    begin
      ...;
      for i := 0 to 10 do
        myfunction (inputVal, ArrayII[i]);
      ...;
    end;
      

  3.   

    试试  myfunction (pchar(inputVal), pchar(ArrayII[i]));