首先明白Big-Endian和Little-Endian的字節排序含義:
Big-Endian:一個Word中的高位的Byte放在內存中這個Word區域的低地址處。
Little-Endian:一個Word中的低位的Byte放在內存中這個Word區域的低地址處。
例如:
如果我們將0x1234abcd寫入到以0x0000開始的內存中,則結果爲:
內存地址 big-endian little-endian
0x0000 0x12 0xcd
0x0001 0x34 0xab
0x0002 0xab 0x34
0x0003 0xcd 0x12
下面代碼則用於判斷本機CPU大小端存儲: