Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我制作了一个基本的 tic-tac-toe 客户端-服务器游戏,我正在努力让它正常工作。一次通过它工作得非常好,但是一旦我循环回来尝试再次播放,recv()就会出现故障(我的客户端正在发送它之前应该发送一个send()命令的东西)。我已经看了我的代码一个小时左右,但我不知道为什么。
recv()
send()
您可能会告诉我,我对套接字和 TCP 编程很陌生,所以我不知道如何解决这个问题。
有关如何解决此问题的任何提示?
您还没有发布代码,但是从您所说的来看.. recv() 并不能确保它会读取其他程序的 send() 发送的所有数据。它只返回读取的字节数。所以你需要保持计数并确保你已经阅读了所有内容。简而言之,您将不得不使用一些预定义的协议来处理双方读取和写入的字节数。如果你还没有,我建议你买一本关于这方面的好书,它真的很有帮助。