我正在使用QtCreator在我的Mac上开发一个非常简单的应用程序。
这是一个控制台应用程序,我希望用户输入其名称,然后显示他的名字。这是代码:
#include <iostream>
int main(int ArgC, char* ArgV[])
{
char Name[1000];
std::cout << "Type your name : ";
std::cin >> Name;
std::cout << "Hello " << Name << "\n";
return 0;
}
使用QtCreator运行此应用程序时,“应用程序输出”选项卡中会显示字符串“输入您的姓名:”。但如果我输入一些文字并按回车键,则不会发生任何事情。
怎么了?
答案 0 :(得分:29)
我找到了解决方案。使用Qt Creator 1.3.0(在Mac OS X上),这是我必须做的:
/usr/x11/bin/xterm -e
。现在,一切正常!
答案 1 :(得分:9)
转到项目 - &gt;运行设置,并确保选中“在终端中运行”。
顺便说一句:
std::cin >> Name;
可能不是你想要的。它只会读取一个令牌(通常只有第一个名称)。您应该查看getline或string version。
答案 2 :(得分:2)
杰罗姆的解决方案是正确的。虽然我可以给你一个不同的选择。如果您不想在同一位置使用X11(出于某种原因无论如何)(QtCreator-&gt; Preferences-&gt; Environment:General:Terminal),您可以像这样给出终端应用程序的路径: /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal
享受!
答案 3 :(得分:2)
Windows解决方案。
在.pro文件中添加:
QT -= core gui
TEMPLATE = app
CONFIG += console
转到项目 - &gt;运行设置,并确保选中“在终端中运行”。
答案 4 :(得分:1)
对于基于Mac的Qt 2.4.0,单击项目垂直选项卡,该选项卡位于“调试”下方,与欢迎,编辑,设计位于同一垂直线上。在Target-&gt;中运行,确保选中“在终端中运行”!
答案 5 :(得分:1)
我在Mac上遇到“无法启动终端模拟器'xterm'”问题,并通过转到设置,环境来修复它点击终端文本字段旁边的“重置”按钮。
出于某种原因,默认它只是说“ xterm -e ”,但在重置后它变成了“ / usr / X11 / bin / xterm -e ”
我的控制台应用程序运行正常。