linux qt可执行文件,控制台打印输出
时间: 2023-07-12 19:35:27 浏览: 157
在 Linux 平台上,使用 Qt 控制台打印输出可执行文件可以使用标准输出流 `std::cout` 或者 Qt 的 `qDebug()` 函数,但需要注意的是 Qt 的 `qDebug()` 函数只在调试模式下输出信息,所以需要使用 `qInstallMessageHandler()` 函数来自定义输出方式。
使用标准输出流 `std::cout`:
```cpp
#include <iostream>
int main() {
std::cout << "Hello World!" << std::endl;
return 0;
}
```
使用 Qt 的 `qDebug()` 函数:
```cpp
#include <QDebug>
void myMessageOutput(QtMsgType type, const QMessageLogContext &context, const QString &msg)
{
switch (type) {
case QtDebugMsg:
std::cout << "Debug: " << msg.toStdString() << std::endl;
break;
case QtInfoMsg:
std::cout << "Info: " << msg.toStdString() << std::endl;
break;
case QtWarningMsg:
std::cout << "Warning: " << msg.toStdString() << std::endl;
break;
case QtCriticalMsg:
std::cout << "Critical: " << msg.toStdString() << std::endl;
break;
case QtFatalMsg:
std::cerr << "Fatal: " << msg.toStdString() << std::endl;
abort();
}
}
int main(int argc, char *argv[]) {
qInstallMessageHandler(myMessageOutput);
qDebug() << "Hello World!";
return 0;
}
```
需要在项目文件中添加 Qt 模块 `Qt5Core`,并且在代码中引入头文件 `<QDebug>` 和 `<iostream>`。同时,需要注意在 `main()` 函数中使用 `qInstallMessageHandler()` 函数来设置自定义的输出方式。
阅读全文