对于数据包中的包头定义有几个问题想问一下大家!

wangsiyuanoo 2013-12-17 08:45:16
struct PacketHead
{
BYTE Version;
WORD Commond;
WORD Length; //包体总长度
}

1.BYTE Version; //不太明白包头里加这个版本号有什么作用,是否是每次改这个消息,版本号就+1???
2.WORD Commond; //这个是否可以理解为用作自定义消息ID,比如USE_ITEM、DELETE_ITEM
...全文
184 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
vcorange 2013-12-20
  • 打赏
  • 举报
回复
struct PacketHead { BYTE Version; WORD Commond; WORD Length; //包体总长度 } 长度不怎么合理,sizeof试试,默认情况 应该是 8 字节 如果按照 #pra...pack(1) (va害的,不会全写) 就是 5 字节
dadiguamaomao 2013-12-19
  • 打赏
  • 举报
回复
顶一个
「已注销」 2013-12-19
  • 打赏
  • 举报
回复
这个定义不怎么好。 command和version之间可能有填充。
laqhelen 2013-12-17
  • 打赏
  • 举报
回复
Version; 在版本有变化时要增加,识别不同的包格式。Command就是要定义怎样处理消息。这里有很多socket实现的协议,你可以参考: http://download.csdn.net/detail/geoff08zhang/4571358

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧