UDP运行时服务器端的问题
用C++,SOCKET,编的C/S模式的,编译什么的多没问题,也能生成解决方案,就是运行时,服务器端显示如下:[color=#FF0000][/color]
Please input data:
HELLO
127.0.0.1 say : HEELO烫烫烫烫烫烫烫烫烫?
Please input data:
HELLO
127.0.0.1 say : HELLO烫烫烫烫烫烫烫烫烫?
Please input data:
HELLO
这是什么情况?乱码了吗?客户端很正常。有时候“?”还会是笑脸,请高手指点!
还有客户端与服务器端双方进行对话时,对话次数由什么决定,send,recv的缓存吗?
不胜感激![color=#FF0000][/color]
[解决办法]
发送方, 发送数据时, 发送的长度请加上结尾的那个 0 (一般情况下,Ansi字符的话,长度就是字符串长度+1, wchar_t 的话,就是+2)。
接收方,正常接收所有数据显示即可。
还有一种方法,就是发送方不动, 接收方,在接收到数据后,在接收数据的末尾,自己加一个 0 , 代表字符串结束。 就不会出现乱码了。
[解决办法]
你服务器接收后没有加\0