Linux---如何判定大小端

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

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

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

#include #include 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 ); }

你可能感兴趣的:(Linux---如何判定大小端)