http://blog.csdn.net/zephyr_be_brave/article/details/8847319
一个数据在内存中可能占了不知一个字节,比如0x123456占了三个字节,高位数据12存在这三个字节的高地址,低位数据56存在低地址,这样比较符合人类思维的就是大端模式,反之就是小段模式。
一个数据一定是从低地址开始偏移的,所以查看一台机子的大小端很方便。
可以对一个int赋值为1,查看其第一个字节的内容是0还是1。
或者在union{int x;char y;}里令x为1,查看y是0还是1……等等许多其他方法。
貌似对齐有一套很复杂的依据,不过根据基本的对齐原则,union,struct的真实大小都是最大类型的倍数。匿名的union和enum里的元素都可以直接拿出来用,但匿名的struct没用处。