我正在学习在 lubuntu 17.10 上使用 Qtcreator,并希望将一些输出打印到终端。我遇到了麻烦,因此将我的程序剥离为基本的Hello World以将单个字符串打印到终端。目前,我正在使用以下代码:
#include <QCoreApplication>
#include <iostream>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
std::cout << "HELLO WORLD" << std::endl;
return a.exec();
}
我的 .pro 文件包含这些看起来可能会影响终端行为的行:
QT -= gui
CONFIG += c++11 console
我还在运行设置中选中了“在终端中运行”。
这构建没有问题。当我运行它时,终端弹出(我正在使用terminator
),并且是空白的,带有闪烁的光标。要让字符串出现,我必须按<Enter>
。字符串出现,但程序没有结束。我没有在终端中收到“按回车键关闭窗口”类型的消息,表明程序已结束,我必须“手动”关闭终端。此外,在“应用程序输出”窗口中,它显示:
/home/user/path_to_my_program crashed.
大概是因为我强制关闭终端。我真的很想弄清楚为什么它没有将字符串打印到终端并干净地退出。
我按 ENTER 后的终端(预先空白):