1. 大端:高位存在低地址残黑,低位存在高地址
比如 :0x12345678
2. 小端:高位存在高地址,低位存在低地址
3. 判斷計算機(jī)是大端還是小端握截,代碼如下所示:
#include<stdio.h>
int main()
{
int val=0x11223344;
char *p=(char *)&val;
if(*p==0x44)//若低地址為低位0x44规惰,則為小端模式
printf("Little Endian\n");
if(*p==0x11)//若低地址為高位0x11,則為大端模式
printf("Big Endian\n");
return 0;
}
4. 大端與小端的轉(zhuǎn)換
#include<stdio.h>
int main()
{
int val=0x11223344;
val=((val<<8)&0xFF00FF00|(val>>8)&0xFF00FF);
val=(val<<16)|(val>>16);
printf("%x\n",val);
return 0;
}
以上