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

请问我写的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);
}