大端序:整数的高位字节存储在内存的低地址处,低位字节存储在内存的高地址处
小端序:整数的高位字节存储在内存的高地址处,低位字节存储在内存的低地址处
法一:强制转换
#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;
}
法二:使用联合体
#include <iostream>
using namespace std;
union endian
{
int a;
char ch;
};
int main()
{
endian value;
value.a = 0x1234;
if (value.ch == 0x12)
cout << "big endian"<<endl;
else if (value.ch == 0x34)
cout << "little endian"<<endl;
}
参考自:https://www.cnblogs.com/zhoudayang/p/5985563.html