gpt4 book ai didi

Delphi 内存复制与记录到另一个记录

转载 作者:行者123 更新时间:2023-12-03 15:15:09 28 4
gpt4 key购买 nike

我的逻辑有问题。我不知道如何在 Delphi 中将记录复制到另一条记录。

TypeA = record
value1 : word;
value2 : word;
value3 : word;
end;

TypeB = record
b1 : byte;
b2 : byte;
end;

我有两条记录 TypeA 和 TypeB。例如,我发现TypeA记录中的数据属于TypeB记录。 注意:TypeA 的数据长度较长。

问题:如何复制TypeA内存并将其放入TypeB记录中?

CopyMemory(@TypeA, @TypeB, Length(TypeB))

当我尝试 CopyMemory 并收到错误(不兼容类型)

PS: I don't want to copy or assign it like below.

TypeB.b1 := TypeA.value1 && $FF;

TypeA and TypeB are just example records. Most of thecases, record TypeA and TypeB may contain multple records and it will be harder to allocate form TypeA and assign to TypeB record.

提前致谢

----附加问题:

有没有办法将 Delphi 记录复制到字节数组?如何?如果有的话,

  • 将一条记录键入字节数组
  • 字节数组转为 B 型

这个逻辑行得通吗?

最佳答案

CopyMemory(@a, @b, SizeOf(TypeB))

如果 a 的类型为 TypeAb 的类型为 TypeB

关于Delphi 内存复制与记录到另一个记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9406792/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com