2010-04-27 290 views
-1

可能重複:
How to stop C++ console application from exiting immediately?如何讓屏幕暫停?

這樣的IM學習C++和我得到這個例子,我想運行它。但我不能讓它保持熬夜,除非我改變它。在我發佈後,如何讓Microsoft Visual 2010在程序結束時跟上屏幕?

#include<iostream> 
using namespace std; 

int area(int length, int width);  /* function declaration */ 

/* MAIN PROGRAM: */ 
int main() 
{ 
    int this_length, this_width;  

    cout << "Enter the length: ";    /* <--- line 9 */ 
    cin >> this_length; 
    cout << "Enter the width: "; 
    cin >> this_width; 
    cout << "\n";        /* <--- line 13 */ 

    cout << "The area of a " << this_length << "x" << this_width; 
    cout << " rectangle is " << area(this_length, this_width); 

    return 0; 
} 
/* END OF MAIN PROGRAM */ 

/* FUNCTION TO CALCULATE AREA: */ 
int area(int length, int width) /* start of function definition */ 
{ 
    int number; 

    number = length * width; 

    return number; 
}         /* end of function definition */ 
/* END OF FUNCTION */ 
+1

這個問題以前曾問過這裏:http://stackoverflow.com/questions/2529617/how-to-stop-c-console-application-from-exiting-immediately(有幾種解決方案列在那裏)。 – 2010-04-27 23:26:14

回答

5

在Visual C++,您可以:

  • 將斷點在main結束括號並運行安裝到調試器(調試 - >啓動調試)。當斷點被擊中時,您將能夠查看控制檯窗口。
  • 從調試器運行分離(Debug - > Start Without Debugging)。當應用程序終止時,控制檯窗口將保持打開狀態,並顯示「按任意鍵繼續...」提示。
+0

我試過「沒有調試就開始」,但它仍然關閉我。 .. – Dakota 2010-04-27 23:35:09

+0

@Dakota:確保您的應用程序是一個控制檯應用程序(項目屬性 - >配置屬性 - >鏈接器 - >系統 - >子系統應該是「控制檯(/ SUBSYSTEM:CONSOLE)」)。 – 2010-04-27 23:38:25

+0

它工作!謝謝詹姆斯。 – Dakota 2010-04-27 23:42:38

1

嘗試return聲明之前加入system("PAUSE");main末。

這將執行PAUSE系統命令,它等待按鍵被按下。

+0

只要暫停在路徑中,它就會工作 - 但它會使程序不必要地依賴於Windows。 – redtuna 2010-04-27 23:24:35

+0

是的,但後來我不會得到我的答案堅持下去..我會嗎? – Dakota 2010-04-27 23:25:14

+1

這真的會起作用嗎?暫停不是可執行文件,它是命令shell的一部分? '系統(「cmd.exe/c pause」);'可能更多是票據,但是它越來越不利於編程實踐。 – 2010-04-27 23:27:51

1

最簡單的方法是等待用戶在從主返回之前按下按鍵。

1

你已經在你的代碼的答案..在程序的末尾添加另一CIN,P用戶必須按方案,繼續並退出

1

我通常使用cin.getchar輸入( )等待一個角色。