Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >C/C++ 获取本机IP地址信息

C/C++ 获取本机IP地址信息

作者头像
王瑞MVP
发布于 2022-12-28 05:40:10
发布于 2022-12-28 05:40:10
2.3K00
代码可运行
举报
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include<winsock2.h>  
#include<iostream>  
#include<string>
using namespace std;
#pragma comment(lib, "WS2_32.lib")

string getIP()
{
    WSADATA WSAData;
    char hostName[256];
    if (!WSAStartup(MAKEWORD(2, 0),&WSAData))
    {  
        if(!gethostname(hostName,sizeof(hostName)))
        {
            hostent *host=gethostbyname(hostName);
            if(host!=NULL)
            {
                return inet_ntoa(*(struct in_addr*)*host->h_addr_list);
            }
        }
    }      
    return "Get IP failed.";  
}

int main()
{
    cout<<"IP地址为:"<<getIP()<<endl;
    system("pause");
    return 0;   
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-06-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
网络协议-简易TCP-1.0
SOCKET _sock = socke(AF_INET,SOCKET_STREAM,IPPROTO_TCP);
Wilbur-L
2020/12/13
4510
网络协议-简易TCP-1.0
C-socket编程,实现客户端与服务端通信(服务端)
浏览量 3 1.创建套接字socket(); 2.地址,端口,监听设置。 3.接受连接请求accerpt(); 4.发送数据send(); 5.接受数据recv(); 6.关闭closesocket(); #include<stdio.h> #include<winsock2.h> #pragma comment(lib,"ws2_32.lib")//去ws2_32.lib库查找 int main() { WORD wVersionRequested; WSADATA wsaData;//用来接
kdyonly
2023/03/03
1.1K0
C/C++ 获取系统IP地址/硬件信息等
#include<stdio.h> #include<winsock2.h> //该头文件需在windows.h之前 #include<windows.h> #include<string> #include<iostream> #pragma comment(lib,"ws2_32.lib") using namespace std; void getIP() { WSADATA WSAData; //WSADATA结构被用来
王瑞MVP
2022/12/28
9770
获取本机地址信息,遇到小问题...有待解决
程序代码: 1 #include "../common/InitSock.h" 2 #include <stdio.h> 3 CInitSock initSock; 4 void main() 5 { 6 char szHost[256]; 7 ::gethostname(szHost,256); 8 hostent *pHost = ::gethostbyname(szHost); 9 in_addr addr; 10 for(int i =0;;
用户1154259
2018/01/17
8100
windows 下最小化 tcp/udp 实例
实际 windows 下 socket 编程和 linux 下几乎没有什么区别,函数名、结构体信息等都一模一样的,因为这些并非是操作系统所设计决定的。而是由公共的组织在维护和约定这些规范。在 windows 下唯一与 linux 不同的就是需要自己手动加载套接字库。其他几乎完全一致,参考以下代码。
我与梦想有个约会
2023/10/20
2370
计网 | C语言Socket编程获取本机IP及指定域名IP
需要注意的是引用winsock2.h头文件后,还需要链接该头文件的实现文件,在本机上使用宏#pragma comment (lib, "ws2_32.lib")无法成功添加该实现文件ws2_32。手动编译时会出现如下报错信息:
Ranlychan
2023/03/05
3.7K0
20.7 OpenSSL 套接字SSL加密传输
OpenSSL 中的 SSL 加密是通过 SSL/TLS 协议来实现的。SSL/TLS 是一种安全通信协议,可以保障通信双方之间的通信安全性和数据完整性。在 SSL/TLS 协议中,加密算法是其中最核心的组成部分之一,SSL可以使用各类加密算法进行密钥协商,一般来说会使用RSA等加密算法,使用TLS加密针对服务端来说则需要同时载入公钥与私钥文件,当传输被建立后客户端会自行下载公钥并与服务端完成握手,读者可将这个流程理解为上一章中RSA的分发密钥环节,只是SSL将这个过程简化了,当使用时无需关注传输密钥对的问题。
王瑞MVP
2023/11/06
4780
20.7 OpenSSL 套接字SSL加密传输
C/C++ 实现枚举网上邻居信息
在Windows系统中,通过网络邻居可以方便地查看本地网络中的共享资源和计算机。通过使用Windows API中的一些网络相关函数,我们可以实现枚举网络邻居信息的功能,获取连接到本地网络的其他计算机的相关信息。本文将介绍一个简单的C++程序,使用Windows API枚举网络邻居信息,并获取对端名称、本机名称、主机名称以及主机IP等信息。
王瑞MVP
2023/12/06
3591
【Chat】实验 -- 实现 C/C++下TCP, 服务器/客户端 "多人聊天室"
本次实验利用TCP/IP, 语言环境为 C/C++ 利用套接字Socket编程,以及线程处理, 实现Server/CLient 之间多人的聊天系统的基本功能。 结果大致如: 下面贴上代码(参考参考..
书童小二
2018/09/03
1.7K0
【Chat】实验 -- 实现 C/C++下TCP, 服务器/客户端 "多人聊天室"
Windows下网络编程(win32API+VS2022)
下载地址:https://visualstudio.microsoft.com/zh-hans/downloads/
DS小龙哥
2024/05/24
2420
Windows下网络编程(win32API+VS2022)
网络编程第三讲UDP编写
  UDP是面向无连接的.就是说数据传输会丢掉.网络延时比较大的情况下.会早上丢包.例如视频通话.就是UDP
IBinary
2019/05/25
4440
C/C++ 实现正反向端口映射
通常服务器是放在内网中,内部局域网中,并且分配了私有IP地址,而如果想要在外部直接访问内部服务器则需要端口映射,端口映射也叫做端口转发,或者叫做虚拟服务器,在渗透时当我们拿到目标机器权限以后,目标机器实在内网环境中,如果想要外部直接访问内部的特定机器的特定端口,则需要使用映射来实现,常用的映射工具是LCX,或者自己实现。
王瑞MVP
2022/12/28
6470
中国黑客六道:网络基础学习篇-获取天气信息
本文介绍了如何通过编写代码获取并解析网页HTML中的天气数据。作者首先使用libcurl库发送HTTP GET请求,然后解析返回的HTML文档,找到其中包含天气信息的HTML标签,并使用正则表达式提取出天气数据。最后,作者将这些数据存储到文件中,并输出到控制台。
企鹅号小编
2018/01/08
8280
中国黑客六道:网络基础学习篇-获取天气信息
socket方式传输文件
上述程序修改搬运自:Python3使用TCP编写一个简易的文件下载器--Linux公社 ,服务器端添加了一段打印本机IP的代码,客户端添加了一段新建receive文件夹保存接收文件的代码。
xxpcb
2020/08/04
3.1K0
【Echo】实验 -- 实现 C/C++下UDP, 服务器/客户端 通讯
本次实验利用UDP协议, 语言环境为 C/C++ 利用套接字Socket编程,实现Server/CLient 之间简单的通讯。 结果应为类似所示: 下面贴上代码(参考参考...) Server 部分:
书童小二
2018/09/03
2.4K0
【Echo】实验 -- 实现 C/C++下UDP, 服务器/客户端 通讯
c++ 网络编程(一)TCP/IP 入门级客户端与服务端交互代码
原文地址:https://www.cnblogs.com/DOMLX/p/9601511.html
徐飞机
2018/09/30
2.1K0
c++ 网络编程(一)TCP/IP  入门级客户端与服务端交互代码
如何偷窥到socket对应的内核缓冲区中有什么数据? 有多少数据?—利用recv的MSG_PEEK和ioctlsocket的FIONREAD
很多时候, 应用程序仅仅想知道内核缓冲区中有什么数据, 或者想知道有多少数据可读, 也就是说, 应用程序仅仅想偷窥一下里面的数据, 并不是想偷取, 那怎么办呢?
全栈程序员站长
2022/09/15
4910
linux网络编程之socket(七):一个进程发起多个连接和gethostbyname等函数
s1mba
2017/12/28
1.7K0
linux网络编程之socket(七):一个进程发起多个连接和gethostbyname等函数
20.8 OpenSSL 套接字SSL传输文件
有了上面的基础那么传输文件的实现就变得简单了,在传输时通常我们需要打开文件,并每次读入1024个字节的数据包,通过SSL加密传输即可,此处的文件传输功能在原生套接字章节中也进行过详细讲解,此处我们还是使用原来的密钥对,实现一个服务端等待客户端上传,当客户端连接到服务端后则开始传输文件,服务端接收文件的功能。
王瑞MVP
2023/11/06
2150
20.8 OpenSSL 套接字SSL传输文件
C/C++ 实现URL路径拆分
URL路径拆分: 例如我们传入 http://www.baidu.com/index.php 拆分为 www.baidu.com 和 /index.php
王瑞MVP
2023/02/25
5560
推荐阅读
相关推荐
网络协议-简易TCP-1.0
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验