请教一个问题,希望大家能回复

xincun777 2003-10-08 09:05:55
(1)我的套接字协议是UDP;
(2)我的电脑做Client,另外一个带处理器的数据采集板做server;
(3)我的程序思路如下:
先用sendto()函数发送命令字(一些特定的字节被封装在UDP的真正数据段,严格按照UDP包的格式)给
server;server解析我的命令字,根据不同命令字传送不同的数据给我(client);client收到数据做判断以后将数据显示在屏上;

(4)我的client端程序描叙如下:
置flag=0;(标志位)
调用sendto()函数,给server发送命令字;
接着是:while(flag==0)
{
一直用recvfrom()函数接收,若接收到数据则flag=1;
}

调试结果是这样的:client发送给server的命令字给ethereal软件截获到,正确;server响应client的数据也发送出来了(也被ethereal软件截获到,完全正确)。但是:我的应用程序(client端)接收到的数据总是等于刚刚发送出去的数据(我的发送缓冲区和接收缓冲区明显是不同的数组)。

server端是正确解析了的,因为我用抓包软件抓到了从server发给client的数据,并且数据就是我想要的数据,一点错误都没有。


请问是怎么回事情,谢谢。
...全文
58 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuxfBrave 2003-10-08
  • 打赏
  • 举报
回复
那就是你接收的时候的地址设置有问题,要不就是发送的时候,你是在一台计算机上模拟的吗?

18,356

社区成员

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

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