最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++中inet_pton、inet_ntop函數(shù)的用法

 更新時(shí)間:2023年08月24日 14:28:10   作者:Lei Gong  
這篇文章主要介紹了C++中inet_pton、inet_ntop函數(shù)的用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

C++中inet_pton、inet_ntop函數(shù)

頭文件

windows下:

#include <WS2tcpip.h>

linux下:

#include <sys/socket.h>
#include <netinet/in.h>
#include<arpa/inet.h>

inet_pton函數(shù)

將點(diǎn)分十進(jìn)制串轉(zhuǎn)換成網(wǎng)絡(luò)字節(jié)序二進(jìn)制值,此函數(shù)對(duì)IPv4地址和IPv6地址都能處理。

  • 第一個(gè)參數(shù)可以是AF_INET或AF_INET6:
  • 第二個(gè)參數(shù)是一個(gè)指向點(diǎn)分十進(jìn)制串的指針:
  • 第三個(gè)參數(shù)是一個(gè)指向轉(zhuǎn)換后的網(wǎng)絡(luò)字節(jié)序的二進(jìn)制值的指針。

inet_ntop函數(shù)

和inet_pton函數(shù)正好相反,inet_ntop函數(shù)是將網(wǎng)絡(luò)字節(jié)序二進(jìn)制值轉(zhuǎn)換成點(diǎn)分十進(jìn)制串。

  • 第一個(gè)參數(shù)可以是AF_INET或AF_INET6:
  • 第二個(gè)參數(shù)是一個(gè)指向網(wǎng)絡(luò)字節(jié)序的二進(jìn)制值的指針;
  • 第三個(gè)參數(shù)是一個(gè)指向轉(zhuǎn)換后的點(diǎn)分十進(jìn)制串的指針;
  • 第四個(gè)參數(shù)是目標(biāo)的大小,以免函數(shù)溢出其調(diào)用者的緩沖區(qū)。

樣例:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/socket.h>
#include <netinet/in.h>
int main (void)
{
	char IPdotdec[20]; //存放點(diǎn)分十進(jìn)制IP地址
	struct in_addr s; // IPv4地址結(jié)構(gòu)體
	// 輸入IP地址
	printf("Please input IP address: ");
	scanf("%s", IPdotdec);
	// 轉(zhuǎn)換
	inet_pton(AF_INET, IPdotdec, (void *)&s);
	printf("inet_pton: 0x%x\n", s.s_addr); // 注意得到的字節(jié)序
	// 反轉(zhuǎn)換
	inet_ntop(AF_INET, (void *)&s, IPdotdec, 16);
	printf("inet_ntop: %s\n", IPdotdec);
}

inet_pton和inet_ntop使用總結(jié)

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
int main (void)
{
	char IPdotdec[20]; //存放點(diǎn)分十進(jìn)制IP地址
	struct in_addr s; // IPv4地址結(jié)構(gòu)體
	// 輸入IP地址
	printf("Please input IP address: ");
	scanf("%s", IPdotdec);
	// 轉(zhuǎn)換
	inet_pton(AF_INET, IPdotdec, (void *)&s);
	printf("inet_pton: 0x%x\n", s.s_addr); // 注意得到的字節(jié)序
	// 反轉(zhuǎn)換
	inet_ntop(AF_INET, (void *)&s, IPdotdec, 16);
	printf("inet_ntop: %s\n", IPdotdec);
	return 0;
}

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

于都县| 连城县| 海南省| 张北县| 平江县| 乐陵市| 临湘市| 公安县| 井冈山市| 驻马店市| 闽侯县| 尚义县| 文山县| 黄梅县| 永年县| 北海市| 禹州市| 梁山县| 孟津县| 漠河县| 宜宾市| 通河县| 平南县| 特克斯县| 建阳市| 甘肃省| 镇赉县| 弋阳县| 无极县| 铁岭县| 新余市| 镇平县| 镇赉县| 丹东市| 海盐县| 扬州市| 奉节县| 兴文县| 舞钢市| 乐平市| 准格尔旗|