怎样判断你的电脑是大端字节序还是小端字节序

来源:互联网 发布:判断数据优劣 编辑:程序博客网 时间:2024/04/19 07:46

简单来讲所谓的大端存储就是将高字节序的内容存在低地址处,那么,小端存储就是将低字节序的内容存在高地址处。  (图片做以解释)




在计算机中,数据的是以其二进制补码的形式存储于计算机中的,上边又提到了大端存储和小段存储,但是,每台计算机的存储方式又是不一样 的,那么,怎么判断一台计算机是打断存储还是小段存储呢?!

下面就来分装一个函数来实现此功能:

我们知道 1 在计算机中存储的是00000000 00000000 00000000 00000001(补码),其十六进制表示为FF FF FF FF,如果取其地址,

计算机就有可能显示的是:01 00 00 00; ————————   小端存储  

                               或者:00 00 00 01; ————————  大端存储

因此,当我们只要知道这个数据存储以后第一位是否为1就可以来判断这台计算机的存储方式是大端存储或者小段存储(当然,这里的数字可以随便给,但是为了方便起见就选1)

<span style="font-size:18px;">int sys_check(){    int num = 1;    char *p = (char *)#        if(*p == 1)        return 1;              //小端存储    else        return 0;              //大端存储} int main(){    int num = 1;    int ret = sys_check();    if(ret == 1)    {        printf("little\n");    }    else if(ret == 0)    {        printf("big\n");    }    system("pause");    return 0;}</span>


1 2
原创粉丝点击