如何在 C++ TCP 套接字上安全地传输 int16_t?在下面的代码中,服务器似乎没有收到正确的值,我猜这是因为没有为 int16_t 定义 htonl/ntohl。
客户:
void client(int16_t value, int socket) {
int16_t _value = htonl(value);
write(socket, _value, sizeof(int16_t));
}
服务器:
int16_t server(int16_t buf, int16_t value, int socket) {
recv(socket,&buf,sizeof(int16_t));
value = ntohl(buf);
return value;
}