字节顺序:大端和小端存储模式
字节存储模式
⼤端模式:是指数据的⾼位字节保存在内存的低地址端,⽽数据的低位字节保存在内存的高地址端。
⼩端模式,是指数据的⾼位字节保存在内存的⾼地址端,而数据的低位字节保存在内存的低地址端。windows10是这种模式。
网络字节序
TCP/IP各层协议将字节序定义为大端,各主机处理网络流时,需要根据主机自身的数据存储模式进行处理。
检测方法
int value = 0x12345678; char* p = (char*)(&value); std::cout << std::hex << (int)(*p); //对于小端模式,输出是:78;win10测试结果 //对于大端模式,输出是:12;
union data { int INT32; char BYTE; }; int main() { data value; value.INT32 = 0x12345678; std::cout << std::hex << (int)value.BYTE; //对于小端模式,输出是:78;win10测试结果 //对于大端模式,输出是:12; }