如何等待特定的击键?

How to wait for a specific 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。

您尝试做的事情有点复杂,C++ 利用 cin 流将控制台的输入输入到您的程序中。按键事件将由操作系统处理,并且会因操作系统而异。因此,使用这样的东西需要用户按 enter/return 才能让程序接收输入。

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

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