将 C 结构迁移到 Delphi 记录
我想知道如何将C结构体转换为Delphi记录?
以下代码是 C 语言。我想转换为 Delphi。
typedef struct
{
Uint16 value1[32];
Uint16 value2[22];
Uint16 value3[8];
}MY_STRUCT_1;
提前致谢。
I would like to know how to convert C struct to Delphi record?
The following code is in C. I want to convert to Delphi.
typedef struct
{
Uint16 value1[32];
Uint16 value2[22];
Uint16 value3[8];
}MY_STRUCT_1;
Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Uint16相当于Word类型,
[]
表示数组。The Uint16 is equivalent to the Word type and the
[]
indicates an array.您可能需要使用packed关键字。默认情况下,Delphi 将根据(我相信)您是否在 16 位、32 位或 64 位平台上进行开发以及记录中的数据类型来对齐变量。使用 Packed 将改变保存记录所需的内存长度/大小。 C默认会打包结构体。
参见:
http://www.delphibasics.co.uk/RTL.asp?Name=Packed
You might need to used the packed keyword. Delphi, by default, will align variables based on (I believe) whether you're developing on a 16, 32 or 64 bit platform and what data types are within your record. Using packed will change the length/size of memory required to hold the record. C will pack the structure by default.
See also:
http://www.delphibasics.co.uk/RTL.asp?Name=Packed