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

运行结果:

相关推荐
北京耐用通信5 小时前
电磁阀通讯频频“掉链”?耐达讯自动化Ethernet/IP转DeviceNet救场全行业!
人工智能·物联网·网络协议·安全·自动化·信息与通信
盐焗西兰花5 小时前
鸿蒙学习实战之路:状态管理最佳实践
学习·华为·harmonyos
NiNi_suanfa5 小时前
【Qt】Qt 批量修改同类对象
开发语言·c++·qt
Deng8723473485 小时前
代码语法检查工具
linux·服务器·windows
mengzhi啊6 小时前
c++11的变参模板和c++17的左折叠
qt
小毅&Nora6 小时前
【人工智能】【深度学习】 ⑦ 从零开始AI学习路径:从Python到大模型的实战指南
人工智能·深度学习·学习
Maxwell_li16 小时前
Pandas 描述分析和分组分析学习文档
学习·数据分析·numpy·pandas·matplotlib
雷工笔记7 小时前
MES学习笔记之SCADA采集的数据如何与MES中的任务关联起来?
笔记·学习
繁星星繁7 小时前
【C++】脚手架学习笔记 gflags与 gtest
c++·笔记·学习
霍夫曼8 小时前
UTC时间与本地时间转换问题
java·linux·服务器·前端·javascript