Delphi中的记录与C语言结构有何异同?

更新于
2026-10-05 00:07:02
0阅读来源:SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计246个文字,预计阅读时间需要1分钟。

任务:使用Delphi编写的应用程序接收三个字段的架构(Delphi方面的记录)。可以使用SendMessage(Win32 API)函数发送此结构的指针。问题:如何在Delphi中维护内存中某些结构的表?

任务:

用Delphi编写的应用程序接受三个字段的结构(Delphi方面的记录).我可以使用SendMessage(Win32 API)函数发送此结构的指针.

所以一个问题是:

如何用Delphi在Delphi的内存中维护某些结构表示?

它有类型

PWPModPostData = ^ TWPModPostData; TWPModPostData = record DataType: Integer; Data: PChar; Next: PWPModPostData; end;

如何在C中定义它?我的意思是,Delphi结构中是否有隐藏或服务字段?

不,没有隐藏字段,Delphi记录和C结构可以1:1相互映射,但需要注意几点:

>不要使用任何数据类型C不了解.这包括对象,动态数组和Delphi字符串.> C和Delphi有时会有所不同关于如何字节对齐字段的想法.测试您的记录并验证他们在C方面工作.如果他们不要,尝试使用打包记录而不是记录.>将指针传递给记录时从C到Delphi,反之亦然确定接收它的一方不试图释放或重新分配记忆.它属于记忆创建它的经理.

本文共计246个文字,预计阅读时间需要1分钟。

任务:使用Delphi编写的应用程序接收三个字段的架构(Delphi方面的记录)。可以使用SendMessage(Win32 API)函数发送此结构的指针。问题:如何在Delphi中维护内存中某些结构的表?

任务:

用Delphi编写的应用程序接受三个字段的结构(Delphi方面的记录).我可以使用SendMessage(Win32 API)函数发送此结构的指针.

所以一个问题是:

如何用Delphi在Delphi的内存中维护某些结构表示?

它有类型

PWPModPostData = ^ TWPModPostData; TWPModPostData = record DataType: Integer; Data: PChar; Next: PWPModPostData; end;

如何在C中定义它?我的意思是,Delphi结构中是否有隐藏或服务字段?

不,没有隐藏字段,Delphi记录和C结构可以1:1相互映射,但需要注意几点:

>不要使用任何数据类型C不了解.这包括对象,动态数组和Delphi字符串.> C和Delphi有时会有所不同关于如何字节对齐字段的想法.测试您的记录并验证他们在C方面工作.如果他们不要,尝试使用打包记录而不是记录.>将指针传递给记录时从C到Delphi,反之亦然确定接收它的一方不试图释放或重新分配记忆.它属于记忆创建它的经理.