大小端模式的測試
如果將任何類型的對象指針強制轉換爲指向任何char(signed char、unsigned char)類型的指針,其結果就是“指向對象的第一個字節”的指針。無論系統的字節次序結構如何,這裏所認定的第一個字節就是地址結構最低的那個字節,因此可用一下的程序來測試系統的而大小端模式。
int main(int argc,char * agrv[])
{
unsigend int uiTest;
unsigned char * putTmp = NULL;
uiTest = 0x12345678;
//putTmp指向&uiTest的第一個字節
putTmp = (unsigned char *)&uiTest;
if(*putTmp == 0x78)
{
printf("小端模式!\n");
}
else
{
printf("打斷模式!\n");
}
}
根據數據中各字節在連續字節序列中間的排列順序的不同,分爲兩種排列方式:大端模式和小端模式。
大端模式:將數據與的最高有效字節MSB存放在低地址單元中,將最低有效字節LSB存放在高地址中。
小端模式:將數據與的最高有效字節MSB存放在高地址單元中,將最低有效字節LSB存放在低地址中。