Linux---如何判定大小端

理解之后,总结一下,记忆的方法是:

    (数据看成字符串)大端——高尾端,小端——低尾端

  稍一思索什么是“高”、什么是"低","尾端"又是什么,问题迎刃而解,再不用担心被“大端”和“小端”迷惑。用这种方式,是时候放弃原先的死记硬背和容易把自己绕进去而发生迷惑的理解了

#include <stdlib.h> #include <stdio.h> int main( int argc, char ** argv) { union { short s; char c[ sizeof( short )]; } un; un.s = 0x0102 ; if( sizeof( short)== 2 ) { if(un.c[ 0]== 1 && un.c[ 1] == 2 ) printf( " big-endian\n " ); else if (un.c[ 0] == 2 && un.c[ 1] == 1 ) printf( " little-endian\n " ); else printf( " unknown\n " ); } else printf( " sizeof(short)= %d\n ", sizeof( short )); exit( 0 ); }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值