字节序
一般PC是低字节序,如果按平时书写习惯,从左到右是高位到地位的顺序,则例如0X12345678,在内存中的情况是
高地址
12
34
56
78
低地址
从低地址到高地址的排列是78563412, 并不是87654321,在高字节序的机器上,是反过来的,从低地址到高地址的排列是12345678,在一个字节里,1和0的排列位置,在高字节序和低字节序机器上,都是一样的。所以在网络编程中,需要转换字节序的是大过一个字节的变量,例如int, long这些,char这样大小为一个字节的变量是不需要的。
结构体在内存中分布
假设有一个结构体
0bc1d236ac3[......]