q调试和输出不起作用



我有这个简单的代码

#include <QtCore/qdebug.h>
#include <QtCore/qcoreapplication.h>
#include <iostream>
using namespace std;
int main(int argc, char **argv)
{
    cout << "pluto" << endl;
    QCoreApplication app(argc, argv);
    qDebug() << "pippo" << endl;
    return app.exec();
    //return 0;
}

我在Eclipse中使用MinGw编译了它,没有任何错误,但当我运行代码时,控制台上不会出现字符串消息。怎么了?谢谢

Luca

要使cout在Windows上工作,需要在.pro文件中包含CONFIG+=console。它不应该对任何其他平台产生任何影响,所以你可以在那里添加它。如果您只想将qmake条件用于调试构建或其他用途,则可以使用它。,或者您可以将其作为命令行选项传递给qmake,如果这对您的工作流程更方便的话:

qmake ...other args... CONFIG+=console

在Windows下,默认情况下,qDebug()输出将进入Windows调试日志。你可以通过两种方式获得:

  • 使用诸如IDE或Microsoft的独立DebugView工具之类的应用程序
  • 在程序代码中使用qInstallMessageHandler Qt函数,获取调试输出,并使用它执行您想要的操作,例如使用cout打印和/或记录它

如果你真的需要在输出中使用它,你可以尝试使用QTextSteam:

#include <QTextStream>
QTextStream cout(stdout);
cout << "stringn";
QTextSteam cerr(stderr);
cerr << "error!n";

相关内容

  • 没有找到相关文章

最新更新