查看当前系统是大端机还是小端机

https://www.cnblogs.com/wanpengcoder/archive/2010/07/16/1778573.html

https://www.cnblogs.com/libao/p/3385799.html

#include <stdio.h>

typedef union
{
    unsigned short int value;
    unsigned char byte[2];
}to;

int main(int argc, char *argv)
{
    to typeorder;
    typeorder.value = 0xabcd;

    if (typeorder.byte[0] == 0xcd && typeorder.byte[1] == 0xab)
    {
        printf("Low endian byte order!\n");
    }
    if (typeorder.byte[0] == 0xab && typeorder.byte[1] == 0xcd)
    {
     printf("High endian byte order!\n");
    }
    return 0;

}
#include <stdio.h>
#include <stdlib.h>
int isLittleEndian()
{
    unsigned short i=1;
    return (1 == *((char *)&i));
}
int main() 
{
    if(isLittleEndian())
    {
        printf("低字节序\n");
    }
    else
    {
        printf("高字节序\n");
    }
}

猜你喜欢

转载自blog.csdn.net/NRlovestudy/article/details/89946921