2010-11-12 36 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