这个模式我记了很多次,但总是混乱,后来我看了别人怎么来记住这个问题,他的办法挺好,
就是只记住一个,如果同时记住两个肯定要混。我们只需要记住小端模式,高位存储在高地址,
也就是“小高高”。这样就一辈子也忘不了了。
如何判断设备cpu是大端模式还是小端模式,联合体union的存放顺序是所有成员都从低地址开始存放,利用该特性可以轻松地获得了CPU对内存采用Little-endian还是Big-endian模式读写。
int IsBigEndian() { union NUM { int a; char b; }num; num.a = 0x1234; if( num.b == 0x12 ) { return 1; } return 0; }
返回0就是小端,返回1就是大端,一般操作系统都是小端,而通讯协议是大端的。