大小端存储
小端存储:数据低位存储在地址高位,数据高位存储在数据低位
大端存储:数据低位存储在地址低位,数据高位存储在地址高位
判断大小端存储的方式1,指针:
#include <stdio.h> int main(int argc, const char* argv[]) { int a = 111; int* p1; *p1 = 0x12345678; char* p = (char*)p1; if (0x78 == *p) { printf("小端存储\n"); //0x78 } else { printf("大端存储\n"); //0x12 } return 0; }
方式二,联合体:
#include <stdio.h>
union AA {
char a;
int b;
} A;
int main(int argc, const char* argv[])
{
A.b = 0x12345678;
if (0x78 == A.a) {
printf("小端存储\n"); //0x78
} else {
printf("大端存储\n"); //0x12
}
return 0;
}