社区
网络编程
帖子详情
winsock 接收数据 如何区分收到的是结构还是字符串
rokky
2009-03-19 02:21:17
现在在写一个同C做的服务器端通讯的程序,服务器发出的数据是包头(结构,里面包含了后续包的长度,以及一些其他信息)和包文(是字符串),现在问题来了,收到一个包以后,我该怎么才能判断这是包头,还是包文,从而采取相应的处理呢。
...全文
91
5
打赏
收藏
winsock 接收数据 如何区分收到的是结构还是字符串
现在在写一个同C做的服务器端通讯的程序,服务器发出的数据是包头(结构,里面包含了后续包的长度,以及一些其他信息)和包文(是字符串),现在问题来了,收到一个包以后,我该怎么才能判断这是包头,还是包文,从而采取相应的处理呢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lyserver
2009-03-20
打赏
举报
回复
按照C服务器提供的结构定义VB结构,然后使用COPYMEMORY将接收缓冲区复制到该结构中进行数据解析。
arong1234
2009-03-19
打赏
举报
回复
这要判断干吗?你不一开始接收了报头,然后根据报头可以知道数据多少,每个部分的位置你都可以算出来啊,你为什么要判断?
VirtualDesktop
2009-03-19
打赏
举报
回复
你先读取指定长度的byte(长度就是你那结构的sizeof),然后求出后面东西的长度,再读取出特定字节啊
后续的包都是这样类推
jadeluo
2009-03-19
打赏
举报
回复
连接上服务器之后第一次收到的是数据包头, 然后你按数据包结构处理之后接收到的数据。
wlk
2009-03-19
打赏
举报
回复
C的结构发过来也是字符串,按C结构体中每个字段长度截取数据
标准MFC
WinSock
ActiveX控件开发实例
case VT_BSTR://
字符串
型 IPAddress = CString(RemoteHost.bstrVal); break; case VT_BYREF|VT_I1://CHAR * IPAddress.Format("%s",RemoteHost.pcVal);//RemoteHost.pbstrVal); break; default: ...
C/C++笔试题(附答案,华为面试题系列)
其中strDest 是目的
字符串
,strSrc 是源
字符串
。 (1)不调用C++/C 的
字符串
库函数,请编写函数 strcat 答: VC源码: char * __cdecl strcat (char * dst, const char * src) { char * cp = dst; while( *cp ) cp++...
Socket编程系列之2:Windows-API网络编程入门实战
Winsock
编程接口 l UDP程序设计 l TCP套接口函数 l Web客户/服务器程序 l 基于windows的IO复用机制 l UDP广播和多播 l 套接字选项 l Windows套接字I/O模型 l 原始套接字与...
C++MFC教程
CStringArray:用来表示可变长度的
字符串
数组。数组中每一个元素为CString对象的实例。下面介绍几个成员函数: Add 增加CString RemoveAt 删除指定位置CString对象 RemoveAll 删除数组中所有CString对象 GetAt ...
六、Socket网络通信基础(三):网络报文消息数据收发
网络报文消息数据收发前言一、网络数据报文格式1、为什么要使用网络报文2、网络数据报文的格式定义二、优化内容1、增加枚举定义:登录、登录结果、登出、登出结果...在消息交互时使用
字符串
不安全,且比较麻烦不好处理
网络编程
1,502
社区成员
18,437
社区内容
发帖
与我相关
我的任务
网络编程
VB 网络编程
复制链接
扫一扫
分享
社区描述
VB 网络编程
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章