大小端的判断是根据系统如何存储二进制数据来判断的
大端顾名思义,以数据的高位做开端的操作系统、小端也是以数据的低位做开端的操作系统
用最简单的例子:
对于数据0x01来说,高位为0低位为1,转十进制:
0x01 = 0 * 16^1 + 1 * 16^0 = 1
计算机如果存储的是01就是以0高位开始就是大端反之存储10那么就是小端
#include <stdio.h>
#include <stdint.h>
int main() {
uint16_t num = 0x01;
char* p = (char* ) #
if(*p == 1) printf("小端系统\n");
else printf("大端系统\n");
return 0;
}
显然Linux用的小端