У меня есть приложение C ++, работающее в Ubuntu, которое ожидает нажатия клавиши, используя функцию getchar (). Ввод не используется, я просто завершаю программу нажатием любой клавиши.
Я заметил, что могу набрать практически любой печатный символ, но также некоторые непечатаемые символы, такие как escape и backspace . Ключами, которые не вызывали окончание моей программы, были такие клавиши, как shift и ctrl .
Так что мой вопрос в том, какие нажатия клавиш считываются getchar ()? Как я могу их классифицировать, так как, по-видимому, не только печатаемые символы запускают getchar ()?
Я не смог найти ответ на странице руководства или в справке по C ++.
Это в основном весь код, который я написал:
std::cout << "Ready for input ..." << std::endl;
std::getchar();
std::cout << "A key was pressed, landing ..." << std::endl;
Помните, что я манипулирую termios, чтобы не ждать символа новой строки и не повторять.