C++获取本机所有ip地址,可区分类型是有线无线虚拟机还是回环

一个小程序,可以获取本地所有ip地址,包括有线,无线,虚拟机,环回接口网卡,等。

如图,一台机器多个网卡:
这里写图片描述
程序执行结果:
这里写图片描述


#include"stdio.h"
#include"string.h"
#include"Winsock2.h"
#pragma comment(lib,"WS2_32.lib")void main()
{   printf("********************************\n");printf("方法一,精确输出\n");WSADATA wsaData;if(WSAStartup(MAKEWORD(2,2),&wsaData)==SOCKET_ERROR){exit(0);}int nLen=256;char hostname[20];gethostname(hostname,nLen); hostent *pHost = gethostbyname(hostname);LPSTR lpAddr = pHost->h_addr_list[0];struct in_addr inAddr;memmove(&inAddr,lpAddr,4);printf("有  线  IP地址:%s\n",inet_ntoa(inAddr));memmove(&inAddr,lpAddr+4,4);printf("无  线  IP地址:%s\n",inet_ntoa(inAddr));memmove(&inAddr,lpAddr+8,4);printf("环  回  IP地址:%s\n",inet_ntoa(inAddr));memmove(&inAddr,lpAddr+12,4);printf("虚拟机1 IP地址:%s\n",inet_ntoa(inAddr));memmove(&inAddr,lpAddr+16,4);printf("虚拟机2 IP地址:%s\n",inet_ntoa(inAddr));printf("********************************\n\n");printf("********************************\n");printf("方法二,打印所有Ip,验证第一次输出\n");char szHost[256] = {0};hostent *lpHost = gethostbyname(szHost);memset(szHost,0,sizeof(szHost));// 取得本地主机名称::gethostname(szHost, 256);// 通过主机名得到地址信息// 打印出所有IP地址in_addr addr;for(int i = 0; ; i++){char *p = lpHost->h_addr_list[i];if(p == NULL)break;memcpy(&addr.S_un.S_addr, p, lpHost->h_length);char *szIp = ::inet_ntoa(addr);//将32位的二进制数转化为字符串;printf("本机IP地址:%s \n", szIp);}printf("********************************\n");::WSACleanup();
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/448239.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mybatis 在 IDEA 中使用 generator 逆向工程生成 pojo,mapper

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 使用mybatis可以逆向生成pojo和mapper文件有很多种方式,我以前用的是mybtais自带的generator包来生成,连接如下&…

C++11多线程----线程管理

说到多线程编程,那么就不得不提并行和并发,多线程是实现并发(并行)的一种手段。并行是指两个或多个独立的操作同时进行。注意这里是同时进行,区别于并发,在一个时间段内执行多个操作。在单核时代&#xff0…

Shell编程入门基础上

前言 为什么学 Shell Shell 脚本语言是实现 Linux/UNIX 系统管理及自动化运维所必备的重要工具, Linux/UNIX 系统的底层及基础应用软件的核心大都涉及 Shell 脚本的内容。每一个合格 的Linux 系统管理员或运维工程师,都需要能够熟练地编写 Shell 脚本语言…

宝宝不开心 : 减肚子大战进行中、持续更新,看看一个月后能不能把腰瘦下来 ...

公司研发中心离家很近,于是来这边后就天天回家吃吃、喝喝、睡睡 ... 中午一个半小时休,吃完就滚上床铺:睡午觉,就这样 天天过得好不惬意 ... // 每周也会发零售,大家都吃得乐呵呵的,晚上加班都是组上好些个…

【融云分析】选择IM云服务,需要看哪些核心技术指标?

IM(即时通讯)云服务已发展数年,不少企业与开发者都倾向于选择第三方IM云服务,短平快地为应用添加即时通讯能力,但如何选择服务商却是个难题,单从简单的功能介绍来看无法判断,因为IM云服务接入后…

Nginx 配置详解

序言 Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的。从2004年发布至今,凭借开源的力量,已经接近成熟与完善。 Nginx功能丰富,可作为HTTP服务器,也可作为反向代理服务器,邮件服务器。支持FastCGI…

jeeCMS首页加载流程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gyshun/article/details/79669293 如果JEECMS部署完毕之后,在浏览器中输入http://localhost:8080/jeecms,系统直接会按照以下步骤执行: 首…

VSCode 汉化、设置为 中文语言显示 、中文界面

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 Vscode是一款开源的跨平台编辑器。默认情况下,vscode使用的语言为英文(us),如何将其显示语言修改成中文了&#…

Python-21-socket编程

一、基础知识 1. C/S架构 C/S架构即客户机/服务器模式。 它可以分为客户机和服务器两层: 第一层: 在客户机系统上结合了界面显示与业务逻辑; 第二层: 通过网络结合了数据库服务器。 简单的说就是第一层是用户表示层,第二层是数据库层。 这里…

解决:VScode 汉化后 、设置中文后 还显示英文的问题

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 按f1 搜索 Configore Display Language 设置 zh-cn 关闭软件重启。 如果重启菜单等还是英文的,在商店查看已安装的插件&…

linux :Docker 方式 安装 zookeeper、阿里服务器上 Docker 运行 zookeeper

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1. 查找官方镜像,并下载镜像: # 搜索镜像: docker search zookeeper# 拉取镜像:docker …

Java 中去除字符串中空格的方法

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1、方法分类 str.trim(); //去掉首尾空格str.replace(" ",""); //去除所有空格,包括首尾、中间str.re…

WEB 请求处理二:Nginx 请求 反向代理

上一篇《WEB请求处理一:浏览器请求发起处理》,我们讲述了浏览器端请求发起过程,通过DNS域名解析服务器IP,并建立TCP连接,发送HTTP请求。本文将讲述请求到达反向代理服务器的一个处理过程,比如:在…

WEB 请求处理 一:浏览器 请求发起处理

最近,终于要把《WEB请求处理系列》提上日程了,一直答应小伙伴们给分享一套完整的WEB请求处理流程:从浏览器、Nginx、Servlet容器,最终到应用程序WEB请求的一个处理流程,前段时间由于其他工作事情的安排,一直…

Biztalk Server 2006安装配置

前段时间收到了来自beta.microsoft.com的BTS20006 Beta2的下载地址,这两天对它进行了一番安装配置。下面把一些经过和步骤和大家分享一下,手中有一些去年的Biztalk Server2004版本的培训资料,里面有11个Lab。需要的朋友请留下mail&#xff0c…

apache 官方 Dubbo 文档

只是分享、记录一下 dubbo 的文档地址:apache 官方 Dubbo 文档 其页面内容如下:(我是用 chrome 直接右键翻译的,原文档是英文的)

CSS Framework 960 Grid System (收)

CSS框架 :960 Grid System 官网:http://960.gs/ 什么是框架?框架是一种你能够使用在你的web项目中概念上的结构。CSS框架一般是CSS文件的集合,包括基本风格的字体排版,表单样式,表格布局等等,比…

发动机的工作原理,你知道吗?

http://auto.jxedt.com/info/5352.htm 发动机是汽车的动力装置,性能优劣直接影响到汽车性能,发动机的类型很多,结构各异,以适应不同车型的需要。按发动机使用燃料划分,可分成汽油发动机和柴油发动机等类别。按发动机汽…

官方文档: Dubbo 框架设计、模块说明、依赖关系

以下内容全文转自 apache 官方 dubbo文档:http://dubbo.apache.org/en-us/docs/dev/design.html 框架设计 图片描述: 浅蓝色背景的左侧区域显示服务用户界面,浅绿色背景的右侧区域显示服务提供者界面,中心区域显示两个侧面界面。…

那些花儿

今天上海下雨了,心绪也变得低落,突然很想念宿舍的姐妹。毕业后就自作聪明地和她们失去了联系,今天去QQ群遛了一圈。虹结婚了,敏还是活得那么潇洒,笑也在努力地生活... 人生啊!总是在向前走,遇…