首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

请教怎么用ICS的SOCKET组件发送并接收一组结构体

2012-03-18 
请问如何用ICS的SOCKET组件发送并接收一组结构体?结构体内包含string integer char,希望能给出相关的代码,

请问如何用ICS的SOCKET组件发送并接收一组结构体?
结构体内包含string integer char,希望能给出相关的代码,谢谢了:)

[解决办法]
socket传送的都是字节流。
所以你只要把要传送的对象转换的字节流,传输过去以后再还原成对象就可以了。

说白了字节流就是两个内容,一个指针,一个指针指向的内容的长度。

如果是传送结构体,你只要依次把record里的成员依次转换到一个上述指针指向的内容就可以了。需要特别注意的是,delphi的record是会做内部优化的,实际占用的内存及内存的机构你跟想想的会不一样。你应该用
packed record
而且string是一个动态管理的堆内存对象,用sizeof计算record的长度的时候并不包含string的真实长度,而是string的变量的长度,因此永远都是32。

我想到的就是要注意上述问题。

热点排行