大端小端的概念

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大端小端的概念相关的知识,希望对你有一定的参考价值。

      对于一个由2个字节组成的16位整数,在内存中存储这两个字节有两种方法:一种是将低序字节存储在起始地址,这称为小端(little-endian)字节序;另一种方法是将高序字节存储在起始地址,这称为大端(big-endian)字节序。术语“小端”和“大端”表示多个字节值的哪一端(小端或大端)存储在该值的起始地址。

 

#define  _CRT_SECURE_NO_WARNINGS 1


#include <stdlib.h>

#include <stdio.h>

int main()

{

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);

system("pause");

}

以上是一个检测大端小端的程序。

以上是关于大端小端的概念的主要内容,如果未能解决你的问题,请参考以下文章

轻松记住大端小端的含义(附对大端和小端的解释)

大端小端

大端/小端的存储模式

大端小端是什么?如何区分?

轻松记住大端小端的含义(附对大端和小端的解释)

写程序判断系统是大端序还是小端序