2010-11-12 35 views
5

可能重复:
Visual Studio Console App - Prevent window from closing.Windows上的C++ - 控制台窗口闪烁并消失。这是怎么回事?

我开始学习C++在Windows上,我尝试一些不同的开发环境: 1. Netbeans的使用Cygwin编译 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?

+0

您是否尝试从命令行运行可执行文件? – Simone 2010-11-12 11:23:28

+0

它正在做你告诉它做的事情,启动程序,写入屏幕,然后退出。您基本上需要让应用程序等待一些用户输入,如下面的答案 – thecoshman 2010-11-12 11:28:03

回答

13

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

+0

或在main()'的右大括号处放置一个断点。 – sbi 2010-11-12 11:28:52

+0

Ctrl + F5不起作用......请参阅我的编辑 – 2010-11-13 01:33:06

+1

我会接受你的回答!为我完美工作。 – Bear 2016-05-22 21:51:54

6

在程序结尾写入cin.get()。

+3

我不喜欢改变程序来做到这一点。 – sbi 2010-11-12 11:27:40

+2

是的,正确的解决方案是从命令行运行应用程序,恕我直言。但是因为他是初学者,所以这会让事情发挥作用。 – Simone 2010-11-12 11:28:47

0

问题一getchar()返回前或cmd.exe

+1

** cin.get()**是C++程序中更好的方法。 – Simone 2010-11-12 11:27:32

+0

@sbi:不知道你会对此说什么。 – Chubsdad 2010-11-12 11:29:09

1

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

1

使用Ctrl+F5运行程序或在最后一行设置一个断点或写cin>>在末尾任何vraiable ....等

1

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

+2

不要以为你的意思是'cin << i' - 也许'cin >> i'而不是? – 2010-11-12 11:40:32