怎么用socket传送复杂结构体

 我来答
就烦条0o
2017-11-03 · 知道合伙人软件行家
就烦条0o
知道合伙人软件行家
采纳数:33315 获赞数:46492
从事多年系统运维,喜欢编写各种小程序和脚本。

向TA提问 私信TA
展开全部
将结构体转换成char*然后再发送。注意服务端的结构体和客户端结构体要严格一致。
定长的简单,直接转成char*搞定。
如果结构体是变长的,要用到一些trick。
最简单的就是零长度的数组。
struct test
{
int aint;
char buff[0];
}

分配内存的时候 test pTest = new(sizeof(test) + n);
然后发送的长度就是 sizeof(test) + n
然后转换成char *发送过去就是了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式