判断系统是大端还是小端

来源:互联网 发布:金钗网络网站 编辑:程序博客网 时间:2024/04/29 09:57

大端系统:

字数据的高字节存放在低地址,而低字节存放在高地址。

小端系统:

字数据的低字节存放在低地址,高字节存放在高地址。

下面这个函数可以判断系统是大端还是小端。


int endian( void )
{
     union
     {
         int i;
          char a;
      }e;
     e.i=1;
     return e.a==1;

}

如果系统是小端则返回1,大端返回0;

这函数的原理是这样的:

把联合e的i成员赋值为1,这样a成员存放的就是i的低字节,如果是小端系统那么i的低字节就应该存放1,而大端

系统a应该存放0。这样就判断出系统是大端系统还是小端系统了。

原创粉丝点击