【发布时间】:2015-11-23 10:21:00
【问题描述】:
当我按下 ESC 时,我想做一些事情。首先我发现了这个:How to read until ESC button is pressed from cin in C++
然后我尝试在该问题中使用 cin.get() 之类的答案。
using namespace std;
const int ESC = 27;
char c;
c = cin.get();
if (c == ESC) {
...;
} else {
...;
}
但它永远不会起作用! cin.get() 可以得到“a”、“1”等。当我输入 Esc 时它不起作用。我也试过cin >> c,也无法捕捉到 Esc。
然后我在<conio.h> 中使用int _getch( void ); 而不是cin.get()。有效!
_getch() 似乎是 C 风格的函数,因此我不喜欢在 C++ 代码中使用它。而且我不明白为什么cin.get() 在我的代码中不起作用,但根据上一个链接中的答案,它似乎在其他人的代码中起作用。
在Windows。
Besedes,这是我第一次在 stackoverflow 中提问,我还没有很好地掌握英语。如果我弄错了什么,真诚地希望您的回答和cmets。
【问题讨论】:
标签: c++