存放端存放buf时int a 0x12345678;char buf[4] {0};大端存放buf[0] 0x12 把高字节放在buf前面小端存放buf[0] 0x78 把低字节放在buf前面解析端解析buf时int x *(int *)buf; 按照主机字节序解析 如果主机小端buf也是小端存放则正确memcpy((char *)x,buf,4); 也是按照主机字节序解析 如果主机小端buf也是小端存放则正确解析协议时要知道收到的帧是大端存放还是小端存放再解析。大部分主机是小端例如int c 0x12345678; *(char *)c[0] 为 0x78;网络数据一般按照大端方式存放。