小端就跟機器有關了。妳在封裝壹個int之類的數字,封裝進去之後就應該是大端的了,可以調用裏面的 htons() 或者htonl()函數來轉化成大端的(當然妳也可以自己按照大端的方式封裝,就會麻煩壹點而已)。傳輸過程中當然也是大端的,接受到的buffer裏面當然也是大端的,但是妳在讀取這個int類型的時候,就需要相應的將大端轉化為小端了(采用ntohs() 函數或ntohl()函數來實現),這樣妳讀取到的就是原來的數字。
可想而知,假如妳用機器A和B通信,而且A和B的端序都是壹樣的話,中間自然就不用轉換來轉換去了。但是這不是好習慣,因為假如移植到另外端序的機器的話就需要修改代碼笭害蒂轎酈計墊襲叮陋。所以最好還是用那幾個函數。