Я умею читать клавиатуру в Linux без остановки (вроде kbhit()
поведение под виндой). Итак, всякий раз, когда он возвращается, я знаю, что есть действие нажатия клавиши.
Тогда я попытаюсь прочитать ключ через getch()
функция.
Мой вопрос заключается в том, что после нажатия на клавиатуре, как я мог знать, что комбинация клавиш Shift + Insert (вставить ярлык как Ctrl+В делает в винде) нажимается?
Как уже отмечалось, нет глобально переносимый способ чтобы сделать это, потому что:
Вместо этого реальным решением было бы использование терминов POSIX, чтобы заставить поток ввода вашей программы работать в необработанном режиме, и установить таймаут для чтения. Затем программа могла читать символы до тех пор, пока они появлялись «достаточно быстро» (ваше решение о том, как быстро).
Эти связанные вопросы показывают некоторые примеры терминов POSIX, включая использование тайм-аутов:
В качестве альтернативы, есть select
вызов: