➤
字節順序有「大端模式」 和 「小端模式」 兩種
➣字節順序只是對
內置數據類型而言,
例如對於一整型(int,int 是內置數據類型)數,好比 0x123456
大端模式:
高地址---------->低地址
0x56 | 0x34 | 0x12
小端模式:
高地址 ---------->
低地址
0x12 | 0x34 | 0x56
但對於
字符串就
沒有大端和小端的說法(雖然字符是內置數據類型,但字符串不是),好比 「123456」,無論系統是大端仍是小端模式,其在內存中的字節順序都是:
低地址 -------------------------------> 高地址
0x31 | 0x32 | 0x33 | 0x34 | 0x35 | 0x36
➤單個字節內的比特位不受這種字節順序的影響,大於一個字節的數據類型纔有字節順序的問題
好比一個字節 1000 0000(或表示爲十六進制 80H),不論是什麼大端仍是小端順序其在內存中的表示都是這樣(二進制):1000 0000。
➤
網絡字節順序是「所見即所得」的順序,即大端模式
好比 int n = 0x567589;
所見到的是「567589」,大端順序也是
低地址 ----------> 高地址
0x56 | 0x75 | 0x89
這就是網絡字節順序,所見到的順序和在內存中的順序是一致的。
<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">網絡