大端和小端
Little-Endian就是低位字节排放在内存的低地址端,高位字节排放在内存的高地址端;
Big-Endian就是高位字节排放在内存的低地址端,低位字节排放在内存的高地址端。
网络字节序定义:收到的第一个字节被当作高位看待,这就要求发送端发送的第一个字节应当是高位。若发送方按地址从低到高读出每个字节并发送,那么在此时的数据是以大端法存放着的。
在80X86平台中,超过1字节的数据是以小端法存放的,因此在发送前需要使用系统提供的htonl将其转换成大端法存放。
更安全的做法是,无论平台是什么,在向网络传送之前,使用系统提供的接口,首先将数据转换到网络序之后再做传输。