如何将指向字节数组的指针传递给函数?

时间:2018-08-18 13:22:21

标签: delphi

我试图将指向数据的指针传递给函数。但我收到错误不兼容的类型:“数组”和“ TBytes”。我找不到解决方法。

type TBytes = array of byte;
type PTBytes = ^TBytes;

procedure Dictionary.WriteData(Data: PTBytes);
begin
  try
    DataStream.Write(Data[0], sec[sid].grp[grp].META.dataLength);
  finally
  end;
end;

以前我尝试过

pData: ^TBytes;
PData := Data^;

最后我打电话

writeData( data);

但是它会产生错误的指针类型

修改

我已将过程appendData替换为writeData。现在比较容易。

1 个答案:

答案 0 :(得分:0)

由于IVO GELOV没有更新他的代码和/或没有删除他的答案,所以我添加了我正在使用的当前代码。

type TBytes =字节数组;

程序Dictionary.WriteData(var Data:TBytes);

begin
  try
    DataStream.Write(Data[0], sec[sid].grp[grp].META.dataLength);
  finally
  end;
end;