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

运行结果:

相关推荐
彧azz9 小时前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试
我爱cope9 小时前
【操作系统 | 计算机硬件:CPU、内存与 I/O 如何支撑操作系统?】
学习·操作系统
-梅9 小时前
linux(8) 软硬链接
linux·运维·服务器
慧都小项9 小时前
当边缘AI上产线:QtitanDocking 如何让工业 HMI 实现多视图协同
人工智能·qt·ui·边缘计算·qt6.3
Wang's Blog9 小时前
Java 项目实战: 外卖平台-文件下载与ServletOutputStream回写浏览器
服务器·项目开发
`流年づ10 小时前
人工智能学习笔记 - 补充
人工智能·笔记·深度学习·学习
琥珀色糖10 小时前
SimlpeHttp
linux·服务器
XUEYUAN521210 小时前
ASN 自治系统号风控:平台如何通过 IP 所属自治域批量识别代理流量
python·网络协议·http·网络安全·socks5
qeen8710 小时前
【Linux】操作系统之进程介绍(二)
linux·笔记·学习·进程
第十人i10 小时前
Linux 日志管理系统:journald 配置与优化
linux·服务器