小坑:recv之后,传入参数“长度”变化
Posted 看,未来
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小坑:recv之后,传入参数“长度”变化相关的知识,希望对你有一定的参考价值。
缘起:
分包嘛,我就想判断一下收到的数据跟预定的数据是否一样长。
然后代码写成这样:
int n = recv(fd, buf, lenth, 0); //为什么走完这一步lenth就发生了突变
if (n != lenth)
{
cout << "recv errno!" << endl; //这里应该写入日志,日志模块这不是还没开发嘛
exit(-1);
}
然后就一直打印 recv errno!
然后我就去调试:
我本来后面的代码还用了 lenth 呢,不过现在看来不能用了,那要用什么?用n吗?如果分段接收,这个n会不会分段来啊?。。。那还怎么用,累加?
我发现我现在处理这些 bug 越来越波澜不惊了
以上是关于小坑:recv之后,传入参数“长度”变化的主要内容,如果未能解决你的问题,请参考以下文章