读取套接字有线问题-在消息中添加一些有线字符 当我发送“1234”时,服务器,即使用SFML库的C++,读取“1234”╠╠╠╠╤lσ╝╝√=♦↑עσ". 当从C++ SFML CaleNET发送到服务器时,一切正常。原始客户端使用异步套接字库用Onj-c编写。世界跆拳道联盟?(所有TCP)

读取套接字有线问题-在消息中添加一些有线字符 当我发送“1234”时,服务器,即使用SFML库的C++,读取“1234”╠╠╠╠╤lσ╝╝√=♦↑עσ". 当从C++ SFML CaleNET发送到服务器时,一切正常。原始客户端使用异步套接字库用Onj-c编写。世界跆拳道联盟?(所有TCP),c++,objective-c,sockets,sfml,C++,Objective C,Sockets,Sfml,我不确定这是否会对您有所帮助,但我建议发送类似于“1234\0”的内容。听起来好像服务器假设它接收的数据以null结尾,但其中一个客户端只是发送“1234”而不是“1234\0”。因此,您看到的奇怪字符可能是服务器内存中的垃圾 您可以使用一个工具,如查看线路上到底发生了什么,以及这两个客户端之间的区别。SFML中的一个简单实现确实假设了一个以null结尾的字段,并将向您显示其原始缓冲区。这并没有终止。可以使用\0终止发送字符串,也可以发送类似于12345的内容,并将打印更改为将\0放在[len]

我不确定这是否会对您有所帮助,但我建议发送类似于“1234\0”的内容。

听起来好像服务器假设它接收的数据以null结尾,但其中一个客户端只是发送“1234”而不是“1234\0”。因此,您看到的奇怪字符可能是服务器内存中的垃圾


您可以使用一个工具,如查看线路上到底发生了什么,以及这两个客户端之间的区别。

SFML中的一个简单实现确实假设了一个以null结尾的字段,并将向您显示其原始缓冲区。这并没有终止。可以使用\0终止发送字符串,也可以发送类似于12345的内容,并将打印更改为将\0放在[len]或类似位置。

从库中获取字符串以及数据长度,并将\0添加到[len]

您需要发布一些代码。如果没有这些,我们真的无法提供帮助。那么你的问题是“WTF?”?你的问题是“有线”?你说你在用“Onj-c”?发布受影响的代码并更正拼写。谢谢!我会用的。