【发布时间】:2013-05-10 20:13:59
【问题描述】:
我是第一学期的 C++ 学生,在课堂上我们正在构建一个 BMI 计算器(Win32 控制台应用程序)。我已经让一切正常工作,除了其中一条指令,即等待用户按 Enter 键关闭应用程序。
我成功使用了系统("PAUSE");声明,但在过去我会声明一个字符串变量,例如,初始化 string genVar; 然后使用 getline(cin, genVar); 当用户按下 Enter ,应用程序将关闭,但这次它没有工作。该应用程序将简单地关闭。它在暂停时工作得很好,但在 getline() 时却不行。
为此目的使用 getline() 是不好的做法吗?有人知道为什么它不起作用吗?
提前谢谢你!
【问题讨论】:
-
输入缓冲区中可能有一个剩余的换行符:stackoverflow.com/search?q=%5Bc%2B%2B%5D%20getline%20skipping