Добавить тайм-аут для getchar () - PullRequest
6 голосов
/ 16 марта 2011

Мне нужно добавить функцию тайм-аута для getchar () в моей программе.

Что мне делать, чтобы, когда моя программа достигла инструкции getchar (), она ожидала нажатия клавиши только определенное время, и если пользователь не нажимал клавишу в течение заданного времени , программа "пропустит" getchar ()?

Операционная система не поддерживает библиотеку conio.h, поэтому kbhit не поддерживается.

1 Ответ

6 голосов
/ 16 марта 2011

Обычно это достигается с помощью select() на stdin. Другое решение будет использовать alarm() и фиктивный обработчик SIGALRM для прерывания вызова getchar() (хотя работает только в системах POSIX).

...