无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(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ó)家法律
沧州市| 桂平市| 怀仁县| 微博| 邵东县| 台东县| 宁乡县| 治多县| 阜宁县| 衡阳县| 沧源| 南康市| 西充县| 通道| 兴和县| 鸡泽县| 鹤岗市| 丹棱县| 嘉黎县| 定日县| 东乡族自治县| 友谊县| 五华县| 比如县| 楚雄市| 普定县| 沐川县| 嘉黎县| 曲周县| 金秀| 吴旗县| 南江县| 岑溪市| 九江县| 云霄县| 五大连池市| 新竹市| 九寨沟县| 阳泉市| 勐海县| 儋州市|