当前位置: 技术问答>linux和unix
linux 下使用 sendmsg 函数 udp 通信问题???
来源: 互联网 发布时间:2016-02-14
本文导语: 在linux下使用sendmsg 进行udp通信时,当数据为字符串时,可以正常通信(收发),当数据为媒体(音频)数据时,无法正确收到数据, 接收缓冲区大于发送缓冲区,所以不溢出,但是接收端只收到2个字节的数据(使用strlen()函数求得),...
在linux下使用sendmsg 进行udp通信时,当数据为字符串时,可以正常通信(收发),当数据为媒体(音频)数据时,无法正确收到数据,
接收缓冲区大于发送缓冲区,所以不溢出,但是接收端只收到2个字节的数据(使用strlen()函数求得),不知道怎么回事,求教各位!!!
接收缓冲区大于发送缓冲区,所以不溢出,但是接收端只收到2个字节的数据(使用strlen()函数求得),不知道怎么回事,求教各位!!!
|
strlen()的问题,strlen是测试字符串长度的,以为字符串的结束标志.你接受的数据既然是媒体(音频)数据,那就不是字符串了.不能再用它来判断数据流的长度了.你用接受函数接受数据时,函数都会返回告诉你接受到了几个字节.