C++ Как сделать постоянный вывод, и только тогда, пользователь что-то выполнить ввод в цикле?

C++ Как сделать постоянный вывод, и только тогда, пользователь что-то выполнить ввод в цикле?
Ещё проще, цикл выводит что-то , не обращая внимания на _gectch(), но , как только пользователь вводит какой-то символ, то он принимает его и выводит его .
  • Вопрос задан
  • 90 просмотров
Решения вопроса 1
gdt
@gdt
Программист
Вы не указали операционную систему. Если у вас linux (или что-то подобное) - вот тут есть решение при помощи select.

В общем случае вы можете запустить отдельный поток, который в цикле выводит то, что вам нужно, и проверяет был ли установлен ивент (WaitForSingleObject, с таймаутом 0). В главном потоке создаёте ивент (CreateEvent), ждёте как обычно _getch, когда символ введён - используете SetEvent чтобы сигнализировать об этом второму потоку, также есть функция ResetEvent - чтобы сбросить ивент после обработки (чтобы можно было в цикле после следующего введённого символа его ещё раз установить). Это уже для windows.

Ну и да, _getch это ни разу не C++, а голый C.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы