如何等待特定的击键?

时间:2017-03-20 02:26:45

标签: c++ keystroke

我对C ++有点新意,所以请原谅我有点不高兴。

在按下特定键之前,是否有可用于使控制台暂停的功能?

示例:

#include <iostream>

using namespace std;

int main()
{
    int i = 0;

    if (specific key pressed) {
        i = 1;
    } else if (other key pressed) {
        i = 2;
    }

    cout << i << endl;

    return 0;
}

如果按下右键,控制台应输出1;如果是另一个键,控制台应输出2。

1 个答案:

答案 0 :(得分:0)

您尝试做的事情有点复杂,C ++使用cin流,其中输入控制台的信息被输入到您的程序中。作为按键事件的地方,操作系统将处理并且在操作系统之间会有所不同。因此,使用这样的东西需要用户按下回车键以返回程序接收的输入。

char key;
std::cin >> key;
if (key == 'a') {
    std::cout << 1;
}
else {
    std::cout << 2;
}

在这里找到一些答案How to handle key press events in c++