2016-03-07 62 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在运行程序时是否会发送垃圾邮件? –