大端小端模式

大端是高位字节先存储

小端是低位字节先存储

网络字节序是大端的,也就是高位字节先传输。

如何判断大小端?

使用int-char的强制类型转换,将低地址的数值截断1个字节。判断该字节的内容。

#include <iostream>
using namespace std;
int main()
{
    int a = 0x1234;
    char c = static_cast<char>(a);
    if (c == 0x12) {
        cout << "big endian" << endl;
    } else if(c == 0x34) {
        cout << "little endian" << endl;
    }
    return 0;
}

解决大小端问题,在通信前加个0xDEADBEEF

posted on 2020-12-10 14:33  LambdaQ  阅读(87)  评论(0编辑  收藏  举报