当前位置: 首页 > news >正文

做策划的工资高吗seo外包公司多少钱

做策划的工资高吗,seo外包公司多少钱,pc手机一体网站,电脑网站建设在Linux系统上用C将主机名称转换为IPv4、IPv6地址 功能 指定一个std::string类型的主机名称&#xff0c;函数解析主机名称为IP地址&#xff0c;含IPv4和IPv6&#xff0c;解析结果以std::vector<std::string>类型返回。解析出错或者解析失败抛出std::string类型的异常消…

在Linux系统上用C++将主机名称转换为IPv4、IPv6地址

功能

指定一个std::string类型的主机名称,函数解析主机名称为IP地址,含IPv4和IPv6,解析结果以std::vector<std::string>类型返回。解析出错或者解析失败抛出std::string类型的异常消息。

源代码 

以前随便写的一个解析域名为IP地址的功能现在需要支持IPv6,所以做了些调整。最后结果如下:

/*C++,将域名解析为IP地址(含IPv4和IPv6)
编译: g++ -o main main.cpp
执行:./main
效果:$ ./main 
13.226.120.15
13.226.120.23
13.226.120.56
13.226.120.3
2600:9000:21e1:1200:1c:b3b0:7700:93a1
2600:9000:21e1:bc00:1c:b3b0:7700:93a1
2600:9000:21e1:9a00:1c:b3b0:7700:93a1
2600:9000:21e1:4e00:1c:b3b0:7700:93a1
2600:9000:21e1:a200:1c:b3b0:7700:93a1
2600:9000:21e1:3600:1c:b3b0:7700:93a1
2600:9000:21e1:1a00:1c:b3b0:7700:93a1
2600:9000:21e1:1800:1c:b3b0:7700:93a1*/// getaddrinfo, gai_strerror, freeaddrinfo
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>// inet_ntop
#include <arpa/inet.h>// strerror
#include <cstring>#include <string>
#include <vector>
#include <iostream>// 域名解析为IP地址,返回地址列表。
std::vector<std::string> hostToIPs(const std::string& host) {std::vector<std::string> addressList;addrinfo hints;hints.ai_family = AF_UNSPEC;hints.ai_socktype = SOCK_STREAM;hints.ai_protocol = 0;hints.ai_flags = 0;hints.ai_canonname = nullptr;hints.ai_addr = nullptr;hints.ai_next = nullptr;addrinfo* result = nullptr;auto res = getaddrinfo(host.c_str(), nullptr, &hints, &result);if (0 != res) {throw std::string(gai_strerror(res));}if (nullptr != result) {int bufferSize = 64;char buffer[64];void* pointer;for (auto rp = result; rp != nullptr; rp = rp->ai_next) {switch (rp->ai_family) {case AF_INET:pointer = (void*)&(((sockaddr_in*)(rp->ai_addr))->sin_addr);break;case AF_INET6:pointer = (void*)&(((sockaddr_in6*)(rp->ai_addr))->sin6_addr);break;default:continue;}if (nullptr == inet_ntop(rp->ai_family, pointer, buffer, bufferSize)) {freeaddrinfo(result);throw std::string("Run inet_ntop fail, errno is ") + std::to_string(errno)+ ", message: " + std::string(strerror(errno));}addressList.emplace_back(std::string(buffer));}freeaddrinfo(result);}if (addressList.size() <= 0) {throw std::string("address list is empty");}return addressList;
}int main() {try {for (const auto& address : hostToIPs("www.english.com")) {std::cout << address << std::endl;}} catch (const std::string& e) {std::cout << e << std::endl;}return 0;
}

运行截图

程序在Ubuntu上开发调试,结果是OK的。解析结果支持IPv4和IPv6地址,主要参考材料是man手册。运行截图:

http://www.ds6.com.cn/news/53537.html

相关文章:

  • 建设娱乐城网站seo是什么单位
  • 徐州做网站网址浏览大全
  • 帝国cms制作网站地图如何做好营销推广
  • 网络营销中网站建设的策略新手怎么入行seo
  • 网站建设经营特色关键词seo排名优化如何
  • 去哪个网站找题目给孩子做线上推广平台都有哪些
  • 合肥建站软件广州网站建设公司
  • 梵克雅宝中国官网旗舰店百度seo建议
  • 做门户网站预算拉新项目官方一手平台
  • 做网站一般用什么语言网络营销策划的具体流程是
  • 做网站编辑累吗百度开户多少钱
  • dede网站暂时关闭互联网+营销策略怎么写
  • 有什么做衣服的网站百度门店推广
  • 做外贸的免费网站独立站建站需要多少钱
  • 山东省商务厅网站开发区管理处google搜索引擎官网
  • 免费网站排名优化软件seo投放
  • 长沙网站设计哪家专业网站推广和精准seo
  • seo计费怎么刷关键词的快速优化网站排名软件
  • 德州网站建设费用阿里指数查询官网
  • 青岛做网站公司百度搜索推广是什么
  • 个人做购物商城网站会罚款吗今天重大新闻
  • 网页制作公司河南网站优化
  • 做网站月入7000app广告推广
  • 西安房产信息网宁德seo培训
  • 珠宝网站模板最常见企业网站有哪些
  • 静态网站如何添加关键词广告投放都有哪些平台
  • 济南网站建设正规公司站长工具精华
  • 玉林住房和城乡建设局网站官网网店推广是什么
  • wordpress 评论回复邮件通知插件福州seo网站排名
  • 过年做啥网站能致富seo外推