程中添加 QT += core gui network
#include < QtNetwork >
#include < QNetworkInterface >
QString Widget::getHostIpAddress()//获取本机IP
{
QString address;
QList<QHostAddress> ipList = QNetworkInterface::allAddresses();
foreach(QHostAddress ipItem, ipList)
{
//只显示以192开头的IP地址`在这里插入代码片
if(ipItem.protocol()==QAbstractSocket::IPv4Protocol
&&ipItem!=QHostAddress::Null
&&ipItem!=QHostAddress::LocalHost&&ipItem.toString().left(3)== "192"
&&ipItem!=QHostAddress::LocalHost&&ipItem.toString().right(2) !=".1"
)
{
qDebug()<<ipItem.toString();
address = ipItem.toString();
}
}
return address;
}
网上的好多获取方法都是单网卡,没有虚拟网卡的获取方法,而现在几乎没有人只有一个网卡地址
该篇文章可以获取正确IP |