Windows上的C ++ - 控制台窗口只是闪烁并消失。这是怎么回事?

时间:2010-11-12 11:20:47

标签: c++ windows visual-studio netbeans cygwin

  

可能重复:
  Visual Studio Console App - Prevent window from closing.

我开始在Windows上学习C ++,而我正在尝试一些不同的开发环境: 1.使用Cygwin编译器的Netbeans 2. MS Visual Studio 2010

对于其中任何一个,当我编写一个非常简单的Hello World程序时,我构建它并且没关系。但是当我尝试运行程序时,命令提示符窗口会很快弹出,然后立即消失。

无论是在Debug还是Release配置中,都会发生这种情况。请帮忙 - 我看不到我的程序输出! :(

感谢。

EDIT1: 谢谢你的回复。这是我的代码:

#include <iostream>

int main()
{
    std::cout << "This is a test." << std::endl;
    return 0;
}

我尝试使用Ctrl + F5进行“无需调试启动”,但这不起作用。它仍会闪烁黑色控制台屏幕然后立即消失。

我也尝试过添加std :: cin.get();这适用于Ctrl + F5,但这不是一个真正...不优雅的解决方案吗?我宁愿让我的节目以最终形式出现。

断点有效,但是我必须运行调试,控制台窗口会闪烁并消失,但它会保留在后台。任何方法让控制台保持在前台,所以我可以立即看到程序输出?似乎它应该如何运作。

还有什么想法吗?为什么Ctrl + F5不起作用?

6 个答案:

答案 0 :(得分:14)

完成程序后,按Ctrl + F5Run without debugging)。这将在关闭窗口之前提示,这就是你想要的。

答案 1 :(得分:6)

在程序结束时写cin.get()。

答案 2 :(得分:1)

我认为您的程序只打印Hello World然后退出。这就是控制台立即关闭的原因。您可以从命令提示符运行可执行文件(开始菜单&gt;运行并键入cmd.exe)。
否则,您可以将std::cin.get()放入代码中,以便程序等待用户输入,因此控制台窗口保持打开状态,直到按下某个键。

答案 3 :(得分:1)

使用Ctrl+F5运行程序或在最后一行设置断点或将cin>>写入最后的任何变量......等等

答案 4 :(得分:1)

您的申请可能正常运作。使控制台应用程序中的最后一个命令等待用户输入:例如int i; string i; cout<<"Hello"; cin<<i;

答案 5 :(得分:0)

在返回或从getchar()

运行之前发出cmd.exe