socklen

數據類型"socklen_t"和int應該具有相同的長度.否則就會破壞BSD套接字層的填充.

數據類型"socklen_t"和int應該具有相同的長度.否則就會破壞 BSD套接字層的填充.POSIX開始的時候用的是size_t, Linus Torvalds(他希望有更多的人,但顯然不是很多) 努力向他們解釋使用size_t是完全錯誤的, 因為在64位結構中 size_t和int的長度是不一樣的, 而這個參數(也就是accept函式 的第三參數)的長度必須和int一致,因為這是BSD套接字接口 標準.最終POSIX的那幫傢伙找到了解決的辦法,那就是創造了 一個新的類型"socklen_t".Linux Torvalds說這是由於他們發現了自己的錯誤但又不好意思向大傢伙兒承認,所以另外創造了一個新的數據類型.(聯繫UNP卷一P25)

相關詞條

熱門詞條

聯絡我們