2015-06-22 39 views
0

我不明白当我在Visual Studio 2013中运行这个为什么运行窗口消失。所以为了弥补这一点,我把一个cin.get();但它仍然不起作用。有人能解释我做错了什么,以及如何解决它?请注意,我对C++很陌生。C++,cin.get();不工作

#include <iostream> 
using namespace std; 

int main() 
{ 
    int a = 0; 

    cout << "How old are you? \n"; 
    cin >> a; 
    cout << a; 
    cin.get(); 
    return 0; 

} 
+0

在cout << a之后打印换行符。也尝试getchar(),而不是cin.get() – Fawzan

+0

他们都没有工作。我尝试添加一个空行后,并用getchar()替换cin.get()。 –

+0

我在gcc(linux)中试过。这个对我有用。你如何在VS中运行它? – Fawzan

回答

2

当你输入的是一个数字,行

cin >> a; 

读取次数和离开输入流中的换行符。当行

cin.get(); 

被执行时,换行符被读取和丢弃。因此,该程序不会等待任何进一步的输入。它执行下一行,从main返回并且程序结束。

+0

AHH !!!这很有道理谢谢你! –

0

您可以在cout之后使用 system("PAUSE")