大端模式:字数据的高字节存储在低地址,低字节则存放在高地址
小端模式:字数据的高字节存储在高地址,低字节则存放在低地址
假设 int i=1
以大端存储存储,其内存布局如下
0x0|0x0|0x0|0x1
低地址 高地址
以小端存储存储,其内存布局如下
0x0|0x0|0x0|0x1
高地址 低地址
判断系统的存储模式
- 利用联合
int checksystem()
{
union()
{
int i;
char ch;
}c;
c.i=1;
if(c.ch==1)
return 1;//小端
else
return 0;//大端
}
2.利用解引用访问一个字节
int checksystem()
{
int a=1;
char *p=(char*)&a;
if(*p==1)
return 1;//小端
else
return 0;//大端
}