【qt】如何获取本机的IP地址?

需要用到这个类QHostInfo 和pro里面添加network 模块

用这个类的静态函数forName()来获取该主机名的信息

返回的就是这个类

这个
QHostInfo
类就包括主机的IP地址信息

用静态函数addresses()来获取
返回的是一个
QHostAddress
的容器

cpp 复制代码
QList<QHostAddress>addrList = hostInfo.addresses();
    if(!addrList.isEmpty())
    {
        for(int i=0;i<addrList.count();i++)
        {
            QHostAddress address=addrList[i];
            if(address.protocol()==QAbstractSocket::IPv4Protocol)
            {
                ui->textEdit->append(address.toString());
            }
        }
    }

**protocol()**是来获取主机地址的网络层协议

返回的参数可能是这些

当前获取的IPV4的地址,但是在2019年的时候就已经宣布了IPV4的地址已经用完了

所以现在有了IPV6的出现!

if(address.protocol()==QAbstractSocket::IPv6Protocol)

把上面代码的4换成6就可以获取IPV6地址了.

运行结果:

相关推荐
阿梦Anmory10 分钟前
规划领域定义语言(PDDL)学习笔记
笔记·学习
开开心心就好10 分钟前
白天晚上自动调蓝光,护眼工具亮度可调
服务器·开发语言·算法·pdf·ocr·intellij-idea·idea
西安同步电子15 分钟前
卫星信号丢失怎么办?NTP 网络校时服务器的守时能力
运维·服务器·网络
绛橘色的日落(。・∀・)ノ18 分钟前
C#学习笔记
笔记·学习·c#
留岁19 分钟前
Git 命令行学习记录
git·学习·elasticsearch
小黄人软件20 分钟前
aipy学习 核心循环
学习
2401_8724187829 分钟前
计算机网络——应用层详解:DNS、电子邮件、FTP 与 HTTP 的原理及通信过程
网络协议·计算机网络·http
川石课堂软件测试36 分钟前
涨薪技术|0到1学会性能测试第8课-Analysis分析图
服务器·数据库·python·sql·jmeter·mysql·容器
小弥儿37 分钟前
GitHub今日热榜 | 2026-10-19:智能体生态包场的一天
学习·开源·github
暴雨课堂38 分钟前
tp5 tp6被攻击篡改后恢复
linux·服务器·php