【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地址了.

运行结果:

相关推荐
极安代理几秒前
什么是HTTP隧道,怎么理解HTTP隧道?
网络·网络协议·http
haluhalu.3 分钟前
从 Linux 线程控制到 pthread 库
java·linux·服务器
水境传感 张园园4 分钟前
自来水厂水质监测站:用数据守护饮水安全
运维·服务器·网络
盐焗西兰花7 分钟前
鸿蒙学习实战之路-PDF转换指定页面或指定区域为图片
学习·pdf·harmonyos
鄭郑8 分钟前
【Playwright学习笔记 06】用户视觉定位的方法
笔记·学习
楼田莉子10 分钟前
Linux系统小项目——“主从设计模式”进程池
linux·服务器·开发语言·c++·vscode·学习
云边散步15 分钟前
godot2D游戏教程系列一(9)-终结
学习·游戏·游戏开发
gs8014016 分钟前
【Xinference实战】解决部署Qwen3/vLLM时遇到的 max_model_len 超限与 Engine Crash 报错
运维·服务器
从此不归路19 分钟前
Qt5 进阶【7】网络请求与 REST API 实战:QNetworkAccessManager 深度应用
开发语言·c++·qt
jrlong29 分钟前
DataWhale大模型基础与量化微调task4学习笔记(第 1章:参数高效微调_LoRA 方法详解)
笔记·学习