2016-03-07 92 views
0

我創建了一個簡單的.exe文件。當我運行它時,它會自動關閉,而不是說「按任意鍵退出」。程序自動退出

這是我的計劃:

#include <iostream> 
#include <string> 
using namespace std; 
int main() 
{ 
    string answer, yes = "yes"; 
    cout << "Is Lucy a top lass ? enter yes or no" << endl; 
    cin >> answer; 
    if (answer == yes) 
    { 
    cout << "Correctomundo" << endl; 
    } 
    else 
    { 
    cout << " Blasphemy ! " << endl; 
    } 
    return 0; 
} 

我如何使它詢問用戶在退出之前按任意鍵?

也有什麼辦法可以改變它,所以它說別的東西,而不是「按任意鍵退出」?

+0

回報 – anoop

+0

這是正常的行爲控制檯前面加上'殘培()'末應用。我會建議反對像一個非標準的程序。如果你想要一個持久的控制檯窗口,首先打開命令提示符窗口並通過它運行你的程序。 – jamesdlin

+0

當我這樣做時,我得到以下內容: - 錯誤\t C3861 \t'getch':標識符未找到。你能解釋這是爲什麼嗎? –

回答

0

嘗試把system("pause");return 0;

+0

這使它工作正常,謝謝! –

+0

不用擔心。 :)) –

1

return 0;之前的代碼末尾加上std::getchar();。這將使程序等待您從標準輸入(鍵盤)中輸入一個字符,並在退出之前按回車鍵(或直接按回車鍵)。 (你可能需要在開始時使用#include <cstdio>才能工作)

如果你想變得非常黑客,你可以在代碼的最後放置一個斷點(你可以學習如何做到這一點here),但是當你在調試模式,而不是在釋放模式只會工作...

+0

請注意,這將需要輸入一個字符*和*按Enter鍵(或者只是按Enter鍵)。 – jamesdlin

+0

我已經添加了這個,但不幸的是它仍然在沒有任何用戶輸入的情況下自行退出。你知道這是爲什麼嗎? –

+0

@FlewittConnor在運行程序時是否會發送垃圾郵件? –