整型数据0x12345678,其存储空间是4个字节,那么在内存中存储有以下两种可能的形式,
高 | 12 | 78 |
34 | 56 | |
56 | 34 | |
低 | 78 | 12 |
图1:小端法(左)、大端法(右)
将数据最低位存储在内存中的低地址处,这种数据存储方法叫做小端法;
将数据最高位存储在内存中的低地址处,这种数据存储方法叫做大端法;
注意:这种数据存储方法上的差别并不是由操作系统造成的,而是由处理器体系结构造成的。
#include <stdio.h>
#include <stdint.h>
uint8_t Memory_Judgment(void)
{
uint32_t a = 1;
(uint8_t *)(&a) ? 1 : 0;
return (uint8_t)a; // return 1:小端 0:大端
}