- 小端的数据存储:
- 数据低位存在地址低位,数据高位存在地址高位;
- 大端的数据存储:
- 数据低位存在地址高位,数据高位存在地址低位;
- 图例显示:
- 验证PC是大端还是小端的代码:
#include <stdio.h>int main(int argc, const char *argv[])
{unsigned int m = 0X12345678;unsigned char *n = (unsigned char *)&m;//打印每个数据位存储的地址位 for(int i = 0; i < 4; i++){printf("%p: %#X\n",n+i,*(n + i));}//0X12U或者0X78U表示无符号 //*n表示数据最低位 if(0X78U == *n){printf("小端\n");} else if(0X12U == *n){printf("大端\n");}return 0;
}
- 运行结果:
000000000062FE0C: 0X78
000000000062FE0D: 0X56
000000000062FE0E: 0X34
000000000062FE0F: 0X12
小端