Qt获取本机IP地址和名称

在学习Qt,想尝试一下用Qt获取IP地址和名称,代码如下:

QLabel *label = new QLabel(this);
    QString localName = QHostInfo::localHostName();

    label->setGeometry(QRect(50,50,200,40));
    label->setText("PC-Name: "+localName);

    QLabel *label_IP = new QLabel(this);
    label_IP->setGeometry(QRect(50,100,200,40));
    QHostInfo info = QHostInfo::fromName(localName);
    //遍历地址获取IPV4地址
    foreach(QHostAddress address,info.addresses())
    {
        if(address.protocol()==QAbstractSocket::IPv4Protocol)
        {
            label_IP->setText("IP: "+address.toString());
        }
    }

需添加头文件如下:

#include 
#include 


运行结果

Qt获取本机IP地址和名称_第1张图片


刚开始运行出错缺少运行的库,多谢Z_墨脱给的提示。提供两个解决方法:

1.在Qt Creator下运行时在.pro文件添加 Qt += network

2.在vs下运行,在新建工程时选中network即可



你可能感兴趣的:(Qt)