我一直在浏览C++ Primer Plus,并且由于Visual Studio 2017存在奇怪的问题,因此我正在使用Visual Studio Code解决其中的编程挑战。我看过很多其他类似的帖子,但那里的解决方案对我不起作用。例如,我尝试在main((函数的右大括号处放置一个断点,在返回0之前在末尾放入cin.ignore((。但这些都行不通。这是代码。
#include <iostream>
using namespace std;
int main() {
int inInput;
cout << "Enter your height in inches." << endl;
cin >> inInput;
int feet = inInput/12;
int inches = inInput%12;
cout << feet << inches << " is your height." << endl;
cin.ignore();
return 0;
}
编辑:
尝试了将其标记为重复的解决方案
,但不起作用。我试图启动你的代码,作为最后一行(在返回之前(,我放了cin.get();
行。 在那之后,我的窗户没有关闭。
此外,您可以再添加一行cin.ignore();
或将现有cin.ignore(2)
更改为,这也将为您提供帮助。 它关闭的原因,是因为在这一行执行之后
cin >> inInput;
仍然n
在输入缓冲区内。因此,首先cin.ignore()
只忽略一个n
,并以自然的方式关闭控制台应用程序。
附言还有几种等待方式:
- C++ 控制台应用程序在运行时立即退出
- 非常基本的C++程序在用户输入后关闭,没有特定的 原因?
这只是控制台应用程序的默认模式:完成执行程序后关闭。
希望它能有所帮助!祝你好运!