首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

请教小弟我写的UDP程序,为什么不能循环接收啊

2014-07-13 
请问我写的UDP程序,为什么不能循环接收啊?char szData[261]={0};程序写成一次接收就可以收到nLen=recvfrom

请问我写的UDP程序,为什么不能循环接收啊?
char szData[261]={0};

程序写成一次接收就可以收到
nLen=recvfrom(m_server,szData,sizeof(szData),0,(LPSOCKADDR)&client_addr,&m_nAddrLen);

改成
for (int i=0;i<261;i++)
{
  nLen=recvfrom(m_server,&szData[i],sizeof(szData[i]),0,(LPSOCKADDR)&client_addr,&m_nAddrLen);
}

就只能收到第一个数据,这怎么办啊?我要循环接收


[解决办法]
261个字节 你还要分261次接收啊
[解决办法]
for (int i=0;i<261;i++)
这个循环也就一瞬间的事情,这么短的时间没数据很正常
你用while(true)
[解决办法]
用while吧。
[解决办法]
while(TRUE)
{
nLen=recvfrom(m_server,szData,261,0,(LPSOCKADDR)&client_addr,&m_nAddrLen);
}

热点排行