【C】大小端

小端模式:数据的高字节,存放在高地址中。计算机读取数据的方向,是从高地址开始读取的;
大端模式:数据的高字节,存放在低地址中。计算机读取数据的方向,是从低地址开始读取的。

 

小端模式:
内存中存放顺序:0x12,0x34,0x56,0x78
读取数据方向:从高地址开始读取数据
读取结果:0x78,0x56,0x34,0x12

大端模式:
内存中排存放序:0x78,0x56,0x34,0x12
读取数据方向:从低地址开始读取数据
读取结果:0x78,0x56,0x34,0x12

列2:
要存放的数据:0x00000004
低字节为:0x04
高字节为:0x00

小端模式:
内存中存放顺序:0x04,0x00,0x00,0x00
读取数据方向:从高地址开始读取数据
读取结果:0x00000004

大端模式:
内存中排存放序:0x00,0x00,0x00,0x04
读取数据方向:从低地址开始读取数据
读取结果:0x00000004

union myunion{
int a;
char b;
}; 

int main(void)
{
  union myunion s1;  //共用体测试
  s1.a=0x10000000;
  if(s1.b==0x10)
    puts("大端模式");
  if(s1.b==0x00)
    puts("小端模式"); 
 
  int a;
  a=0x10000001;     //指针测试
  char b=*((char*)(&a));
  if(b==0x10)
    puts("大端模式");
  else if(b==0x01)
    puts("小端模式"); 
  return 0;
}

https://blog.csdn.net/xiao_yi_xiao/article/details/120747648

posted @ 2021-12-21 09:18  不溯流光  阅读(40)  评论(0编辑  收藏  举报