如果我错了,请纠正我。
struct st {
int a, b, c;
}
struct st test = {1, 2, 3};
send(socket, (char *) &test, sizeof(test), 0);
现在另一方面我应该如何收到它?这样的事情会起作用吗?
struct st received;
read = recv(socket, (char *) & received, sizeof(st), 0);
这里的问题是如果它不能立即读取整个结构,只有一些字节(数量存储在读取中)。如果我现在想要在此结构中附加更多字节来完全读取它,那么下面的代码是否正确?
recv(socket, (char *) &received + read, sizeof(st) - read, 0);
等等?
当然,这将持续到读取所有字节为止。