国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

sockaddr_in中sin_zero的意義,以及sockaddr_in sockaddr in_addr區(qū)別聯(lián)系

2023-03-08 11:14 作者:有AI野心的電工和碼農(nóng)  | 我要投稿


sa_family是地址家族,是AF_xxx的形式。常設(shè)為AF_INET,代表Internet(TCP/IP)地址族

sa_data是協(xié)議地址,由sa_family決定。

如果sa_family=AF_INET,則sa_data就是sockaddr_in的sin_addr和sin_port。

換句話(huà)說(shuō),這時(shí)sockaddr可以當(dāng)作sockaddr_in看。

  • sin_family意義與sa_family同。

  • sin_port存儲(chǔ)端口號(hào)(使用網(wǎng)絡(luò)字節(jié)順序)

  • sin_addr存儲(chǔ)IP地址,使用in_addr這個(gè)數(shù)據(jù)結(jié)構(gòu)

  • sin_zero是為了讓sockaddr與sockaddr_in兩個(gè)數(shù)據(jù)結(jié)構(gòu)保持大小相同而保留的空字節(jié)。

在in_addr結(jié)構(gòu)體中,s_addr按照網(wǎng)絡(luò)字節(jié)順序存儲(chǔ)IP地址。

sin_zero用來(lái)將sockaddr_in結(jié)構(gòu)填充到與struct sockaddr同樣的長(zhǎng)度,可以用bzero()或memset()函數(shù)將其置為零。

指向sockaddr_in的指針和指向sockaddr的指針可以相互轉(zhuǎn)換,這意味著如果一個(gè)函數(shù)所需參數(shù)類(lèi)型是sockaddr類(lèi)型時(shí),你可以在函數(shù)調(diào)用的時(shí)候?qū)⒁粋€(gè)指向sockaddr_in的指針轉(zhuǎn)換為指向sockaddr的指針;或者相反。

想來(lái)你是要進(jìn)行網(wǎng)絡(luò)編程,使用socket, listen, bind等函數(shù)。你只要記住,填值的時(shí)候使用sockaddr_in結(jié)構(gòu),而作為函數(shù)的參數(shù)傳入的時(shí)候轉(zhuǎn)換成sockaddr結(jié)構(gòu)就行了,畢竟都是16個(gè)字符長(zhǎng)。


sockaddr_in中sin_zero的意義,以及sockaddr_in sockaddr in_addr區(qū)別聯(lián)系的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
永康市| 界首市| 长治县| 辽源市| 汾西县| 杭锦旗| 故城县| 琼中| 盱眙县| 额尔古纳市| 成武县| 灵台县| 峡江县| 安西县| 高安市| 武定县| 新泰市| 乐业县| 绥德县| 北宁市| 徐汇区| 尖扎县| 临湘市| 开封市| 化州市| 萨迦县| 赣榆县| 抚顺市| 图木舒克市| 大同市| 南安市| 错那县| 遂平县| 平昌县| 新乐市| 双桥区| 宣恩县| 崇左市| 称多县| 蕲春县| 神木县|