如何直接从连接的套接字读取 uint 而无需进行任何转换。
实际上,什么是 D 等价于read(sock, &four_byte_var, 4)
。我似乎无法将 a 转换为uint
D 标准库socket.receive(void[])
将接受的任何内容。
如何直接从连接的套接字读取 uint 而无需进行任何转换。
实际上,什么是 D 等价于read(sock, &four_byte_var, 4)
。我似乎无法将 a 转换为uint
D 标准库socket.receive(void[])
将接受的任何内容。
您需要传递一个围绕变量的切片:
uint n;
socket.receive((&n)[0..1]);
请注意,这种方法是字节序敏感的。
这很容易std.socketstream
:
auto stream = new SocketStream(socket);
uint foo;
stream.read(foo);
注意:std.stream
and模块将std.socketstream
被一个新接口替换(嗯,这可能需要一段时间)。