使用Qt Creator控制台输入

时间:2009-08-31 07:56:29

标签: qt qt-creator

我正在使用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运行此应用程序时,“应用程序输出”选项卡中会显示字符串“输入您的姓名:”。但如果我输入一些文字并按回车键,则不会发生任何事情。

怎么了?

6 个答案:

答案 0 :(得分:29)

我找到了解决方案。使用Qt Creator 1.3.0(在Mac OS X上),这是我必须做的:

  • 项目 - &gt;运行设置,选中“在终端中运行”(感谢Ropez)
  • Qt Creator-&gt;偏好:环境:一般:终端:我必须将整个路径放到XTerm。对于我的配置,我必须放/usr/x11/bin/xterm -e

现在,一切正常!

答案 1 :(得分:9)

转到项目 - &gt;运行设置,并确保选中“在终端中运行”。

顺便说一句:

std::cin >> Name;

可能不是你想要的。它只会读取一个令牌(通常只有第一个名称)。您应该查看getlinestring 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,单击项目垂直选项卡,该选项卡位于“调试”下方,与欢迎,编辑,设计位于同一垂直线上。在Tar​​get-&gt;中运行,确保选中“在终端中运行”!

答案 5 :(得分:1)

我在Mac上遇到“无法启动终端模拟器'xterm'”问题,并通过转到设置环境来修复它点击终端文本字段旁边的“重置”按钮。

出于某种原因,默认它只是说“ xterm -e ”,但在重置后它变成了“ / usr / X11 / bin / xterm -e ”

我的控制台应用程序运行正常。