char buf[100];
int32_t x = 100;
((int*)buf)[0] = htonl(x);
send(clientfd, buf, 100, 0);
接收端(golang)
var num int32
buffer := make([]byte, 4)
length, err := conn.Read(buffer)
if err != nil {
return
}
buf := bytes.NewReader(buffer)
err = binary.Read(buf, binary.BigEndian, &num)
注意:这里golang并没有类似ntohl()、htonl()等函数, 但是提供了binary.BigEndian binary.LittleEndian等模式