• 4200阅读
  • 7回复

[提问]QT在获得本机IP时出现问题,求助!! [复制链接]

上一主题 下一主题
离线鱼嘴少年
 

只看楼主 倒序阅读 楼主  发表于: 2017-10-26
QString Widget::getIP()  //获取ip地址{    QList<QHostAddress> list = QNetworkInterface::allAddresses();
    foreach ( QHostAddress address, list)    {       if(address.protocol() == QAbstractSocket::IPv4Protocol)
       ui->textEdit->append(address.toString());    }    return 0;
}编译后报错D:\QT_Project\test_123\widget.cpp:26: error: 'address' was not declared in this scope
        if(address.protocol() == QAbstractSocket::IPv4Protocol)adress明明声明了啊 ,怎么回事呢?
           ^
离线鱼嘴少年

只看该作者 1楼 发表于: 2017-10-26
adrsss明明进行了声明了啊
离线小韩老师

只看该作者 2楼 发表于: 2017-10-27
看不出什么问题,检查确保pro文件中增加了network模块,头文件中包含了QHostAddress,如果还不行,就把编译的临时文件全部删除重新编译,祝你好运
离线never_forget

只看该作者 3楼 发表于: 2017-10-27
我怎么感觉是这个 foreach 用法的问题呢!
离线九重水

只看该作者 4楼 发表于: 2017-10-27
foreach我极少用,因为C++的for已经有类似的功能,
比如:
QStringList strList = {“abc”, "def"};
for(QString str : strList){
    qDebug()<<str;
}

foreach确实没怎么用过,无能无力


离线uidab

只看该作者 5楼 发表于: 2017-10-27
  1. #include <QCoreApplication>
  2. #include <QNetworkInterface>
  3. #include <QDebug>
  4. int main(int argc, char *argv[])
  5. {
  6.     QCoreApplication a(argc, argv);
  7.     QList<QHostAddress> list = QNetworkInterface::allAddresses();
  8.         foreach ( QHostAddress address, list)
  9.           {
  10.   if(address.protocol() == QAbstractSocket::IPv4Protocol)
  11.      qDebug() << address.toString();
  12. //                ui->textEdit->append(address.toString());
  13.           }
  14.     return a.exec();
  15. }






测试代码没什么问题,再仔细看看你代码
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线鱼嘴少年

只看该作者 6楼 发表于: 2017-10-27
回 uidab 的帖子
uidab:
[code]#include <QCoreApplication>
#include <QNetworkInterface>
#include <QDebug>
int main(int argc, char *argv[])
{
.......



题主,请看还是出现了相
同的问题,会不会是我的版本问题呀,或者干脆不用foreach
离线uidab

只看该作者 7楼 发表于: 2017-10-27
回 鱼嘴少年 的帖子
鱼嘴少年:题主,请看还是出现了相
[图片]同的问题,会不会是我的版本问题呀,或者干脆不用foreach (2017-10-27 12:44)

我不知道你的代码是不是拷贝我粘贴的,你可以试试拷过去。

另外最好把编译输出也贴出来,我习惯看那个找问题。
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
快速回复
限100 字节
 
上一个 下一个