0
我在写一个名为“TicTacToe”的简单游戏。我也想用WinSock创建一个网络功能。虽然两个用户之间的连接没有错误,但我无法收到任何正确的数据。收到缓冲区后,会填入“☺$ 0/A”等奇怪字符,同时收到“Hello!”。C++ winsock - recv()返回不正确和奇怪的缓冲区
这里是我的代码:
const char buf[] = "Hello!";
char rbuf[16];
int bytes = 0;
memset(buf, 0, sizeof(buf));
// sending
send(sox, buf, sizeof(buf), 0);
// recv
bytes = recv(sox, rbuf, 16, 0)
rbuf[bytes] = '\0';
cout << rbuf << endl;
总是检查recv()的返回值是否有错误。 – Kelm
请显示你的真实代码,这将不会编译 – 4pie0
看起来,你是对的,因为它总是返回SOCKET_ERROR代码,谢谢你的领导!我稍后会查看详细信息。 – user3366592