本文共 764 字,大约阅读时间需要 2 分钟。
举一个例子,比如数字0x12 34 56 78
在内存中的表示形式为:
大端模式:
低地址 -----------------> 高地址 0x12 | 0x34 | 0x56 | 0x78
小端模式:
低地址 ------------------> 高地址 0x78 | 0x56 | 0x34 | 0x12
#includeint main(){ int data = 1; char* p = (char*)&data; if(*p == 1) { printf("小端机器\n"); } else if(*p == 0) { printf("大端机器\n"); } return 0;}
bool IsBigEndian(){ union NUM{ int a; char b; }num; num.a = 0x1234; if( num.b == 0x12 ){ printf("大端机器\n"); return true; } printf("小端机器\n"); return false; }
转载地址:http://piztn.baihongyu.com/