>i; 返回0; },visual-c++,Visual C++" /> >i; 返回0; },visual-c++,Visual C++" />

Visual c++ 为什么控制台应用程序没有';结束? 我第一次使用Visual C++(新的语言)——有经验的C……所以我有我的第一个控制台应用程序,我在VisualStudio中启动了。 #include "stdafx.h" #include <iostream> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { int i; cin >> i; return 0; } #包括“stdafx.h” #包括 使用名称空间std; int _tmain(int argc,_TCHAR*argv[] { int i; cin>>i; 返回0; }

Visual c++ 为什么控制台应用程序没有';结束? 我第一次使用Visual C++(新的语言)——有经验的C……所以我有我的第一个控制台应用程序,我在VisualStudio中启动了。 #include "stdafx.h" #include <iostream> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { int i; cin >> i; return 0; } #包括“stdafx.h” #包括 使用名称空间std; int _tmain(int argc,_TCHAR*argv[] { int i; cin>>i; 返回0; },visual-c++,Visual C++,为什么控制台窗口(即应用程序)在我按enter键时不关闭?没有其他输入-只需输入 更重要的是,如果我只按enter键,如何使应用程序正确退出(不想使用exit())?std::cin等待您发送一个非空字符串,然后尝试将该字符串转换为整数 当您按下Enter std::cin时,只会获取一个空字符串并继续等待一些有效的输入。这是故意的。cin不是用来模拟其他交互的 要在按键时终止应用程序,您必须使用操作系统特定的工具来读取键盘按键 这是DOS/console窗口上“conio.h”中的kbhit(

为什么控制台窗口(即应用程序)在我按enter键时不关闭?没有其他输入-只需输入


更重要的是,如果我只按enter键,如何使应用程序正确退出(不想使用
exit()
)?

std::cin等待您发送一个非空字符串,然后尝试将该字符串转换为整数

当您按下Enter std::cin时,只会获取一个空字符串并继续等待一些有效的输入。这是故意的。cin不是用来模拟其他交互的

要在按键时终止应用程序,您必须使用操作系统特定的工具来读取键盘按键

这是DOS/console窗口上“conio.h”中的kbhit()函数和POSIX系统上的termio函数

从您的源代码中,我可以得出结论,您使用的是MSVC++编译器,因此请尝试替换

std::cin >> i

不要忘记添加

#include <conio.h>
#包括

请记住,这是一个特定于Windows的解决方案。

+1了解更多说明。我还发现我可以编写
cin.get(c)并且我可以得到想要的结果。我也会查
,谢谢!是的,cin.get(c)读取任何字符(包括回车时生成的CR/LF),因此这也可以工作。说得好。
#include <conio.h>