UDP发送总结

调试了半天,发现前几个命令好用,后面的就死了,最后发现错误的包后面多了个r,查找下才知道

if(sendto(sock_UDP, sendbuf.c_str(), (int)sendbuf.size()+1, 0, (struct sockaddr*)&destaddr, length))

一定要(int)sendbuf.size()+1,不加以的话最后的结束字符时不能发送出去的,或者也可以在接收端每次接收后都清零,一些细节得慢慢积累,呵呵

 

还有一个问题没有继续搞明白,就是主线程创建了socket,而子线程用socketrecvfrom,发现两个socket的值不同,不过微软说过不建议在dllmain里创建线程,所以在recvfrom那里有重新初始化了一个socket专门用于来接受数据

你可能感兴趣的:(UDP发送总结)