怎麼判斷大小端(網路位元組序和主機位元組序)

2021-10-22 03:57:21 字數 541 閱讀 3425

怎麼判斷大小端(網路位元組序和主機位元組序)

使用union進行判斷,這裡說一下能用union判斷的理由,union所佔的位元組數是union中成員的最大位元組數,也就是說成員們共用同一塊位址。

#include

void

byteorder()

test;

test.data =

0x0102;if

(test.value[0]

==1&& test.value[1]

==2)//低位高位址

printf

("big endian\n");

else

if(test.value[0]

==2&& test.value[1]

==1)//低位低位址

printf

("little endian\n");

else

printf

("oo\n");

}int

main()

參考遊雙老師

大端和小端(網路位元組序和主機位元組序)

大端和小端 網路位元組序和主機位元組序 大端 big endian 即網路位元組序。小端 littile endian 即主機位元組序。記憶方式 網路的範圍很大,所以大端是網路位元組序。大端方式將高位存放在低位址,小端方式將低位存放在高位址。採用大端方式進行資料存放符合人類的正常思維,而採用小端方式...

大端和小端(網路位元組序和主機位元組序)

大端和小端 網路位元組序和主機位元組序 大端 big endian 即網路位元組序。小端 littile endian 即主機位元組序。記憶方式 網路的範圍很大,所以大端是網路位元組序。大端方式將高位存放在低位址,小端方式將低位存放在高位址。採用大端方式進行資料存放符合人類的正常思維,而採用小端方式...

大端位元組序 小端位元組序(網路位元組序 主機位元組序)

大端位元組序 整數的高位位元組儲存在記憶體的低位址處,低位元組儲存在記憶體的高位址處。一般pc大多採用小端位元組序,也稱為主機位元組序。網路上傳輸採用大端位元組序,也稱為網路位元組序。linux中常用轉換函式如下 include uint32 t htonl uint32 t hostlong 無符...