c语言 udp 解包_UDP打包及解包问题

本文探讨了在C语言中使用UDP协议进行数据打包和解包的问题。主要内容包括理解UDP协议的数据结构,如何根据自定义协议打包和解包结构体数据,以及在实际操作中需要注意的内存对齐和数据转换问题。同时,文章提出了如何将结构体变量通过UDP发送以及接收后转换回结构体的疑问,寻求对使用UDP协议收发结构体数据的指导。

UDP打包及解包问题

(2012-04-11 00:12:39)

标签:

打包

杂谈

UDP打包及解包问题第一个问题:

想问下在VC++开发平台下,是否提供了UDP协议打包和解包的接口函数?通常所说的“打包”和“解包”的编程工作,是不是可以这样来理解“要依据自己设计的协议包的格式进行打包和解包的编写工作”?

第二个问题:

定义一个结构体

struct Student{

char name;

char sex;

};

按照结构体长度的计算方法,name变量占20个字节,sex变量占1个字节,因此Student结构体占21个字节;

但通过co

.html

这个地址你可以好好看一下,是关于内存对齐的。原帖由 leiwang_80 于 2009-9-2 20:36 发表

http://bbs2.chinaunix.net/images/common/back.gif

请问3楼所说“应用层只需组装好用户数据”是什么意思?能否举例详细说明一下?谢谢!

你用UDP协议把一些数据从一台计算机发到另一台计算机http://www.manuallyyours.comhttp://www.imhk.net/,你想要发送的数据就是用户数据,也就是应用层数据,而实际网卡发送的数据已经附加了很多其他数据,通常是链路层协议内容+IP报头+UDP报头+应用层数据,而除应用层数据需要你自己准备之外,其他数据通常都由操作系统自动帮你添加,然后由操作系统负责发送到网卡上,因此你只需要关心应用层数据,详细情况请参考TCP(UDP)/IP协议.原帖由

lz_fine 于 2009-9-3 11:19 发表

http://bbs3.chinaunix.net/images/common/back.gif

你用UDP协议把一些数据从一台计算机发到另一台计算机,你想要发送的数据就是用户数据,也就是应用层数据,而实际网卡发送的数据已经附加了很多其他数据,通常是链路层协议内容+IP报头+UDP报头+应用层数据,而除应

...

另问两个问题:

1、这里再进一步详问一下关于使用UDP协议如何将一个结构体变量发送出去,以及如何将接收到的数据转换为结构体变量进一步使用?

2、关于使用UDP协议收发数据,是否要将数据统一转换为字符串发送?能否直接发送结构体变量或者类变量?发送和接收的数据是什么形式?是字节流还是字符流?

请高手指点,谢谢!

分享:

喜欢

0

赠金笔

加载中,请稍候......

评论加载中,请稍候...

发评论

登录名: 密码: 找回密码 注册记住登录状态

昵   称:

评论并转载此博文

发评论

以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值