小端存儲:數據的低字節存儲在地址空間的低字節位,數據的高字節存儲在地址空間的高字節位。
大端存儲:數據的低字節存儲在地址空間的高字節位,數據的高字節存儲在地址空間的低字節位。
判斷計算機是小端還是大端的核心點:
1、取出int類型低字節存於char,對比取出的低位存放的數據跟整個int類型數據的值。
2、跟據聯合體特點,所有成員共享內存空間。
特別的:網絡字節序是大端模式。
//try 一 try void judgeSystemEndian() { int a = 0x1234; char b = static_cast<char>(a); if (b == 0x12) { cout << "本計算機是___《大端》___存儲模式." << endl; } else if (b == 0x34) { cout << "本計算機是___《小端》___存儲模式." << endl; } union U { int a; char b; }u; u.a = 1; if (u.b == 0) { cout << "本計算機是___《大端》___存儲模式." << endl; } else if (u.b == 1) { cout << "本計算機是___《小端》___存儲模式." << endl; } } //我的電腦是小端模式
如何將大端存儲轉為小端存儲,如何將小端存儲轉位大端存儲:https://www.cnblogs.com/azbane/p/11303592.html