本帖最后由 abcbuzhiming 于 2013-04-06 16:53 编辑
我做了个这样的试验,接收端设置了一个长度只有5的char缓冲区,然后从发送端发超过这个长度的字符串过来,于是得到以下情况。发送“1”
得到“1”发送“123456789”,结果是分两次接收到
“12345乱码”
“6789乱码”发送"123451234512345",分三次接收到
"12345乱码"
"12345乱码"
"12345乱码"我后来发现只要发3个以上的字符就会跟着乱码,而且乱码的内容看上去每次都一样,请问这个乱码的内容到底是啥呢?tcp的机制切割了字符串后给切割结果字符串尾巴加上什么?还是说,不加任何东西?
数据包长度超过网络所容许的最大传送单元(MTU),这是需要数据报分片。
memset();
我是故意把缓冲区弄到这么小看会发生什么情况的