Прерывание бесконечного цикла - C (СИ)
Формулировка задачи:
У меня есть код с бесконечным циклом. В этом коде долго происходят действия. Я хочу сделать проверку, если пока код выполнялся, в консоли написали stop, то в начале следующей итерации цикл прерывается. Думаю, надо сделать как-то так:
Но как именно это делать?
while(true){if(getInput() == "stop"){break;}/*Something long*/}
Решение задачи: «Прерывание бесконечного цикла»
textual
Листинг программы
#include <stdio.h> #include <windows.h> int main() { while (GetAsyncKeyState(VK_ESCAPE) == 0) { printf("for exit press <ESC>\n"); Sleep(100); } return 0; }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы: iostream.h и windows.h
- Объявляем функцию main()
- Запускаем бесконечный цикл while, условием которого является значение функции GetAsyncKeyState(VK_ESCAPE)
- Внутри цикла выводим сообщение
for exit press <ESC>
с помощью функции printf() - Используем функцию Sleep(100) для задержки выполнения программы на 100 миллисекунд
- Если значение функции GetAsyncKeyState(VK_ESCAPE) изменилось, то есть равно не 0, то выполняем выход из цикла с помощью оператора break
- Возвращаем 0, чтобы указать, что программа успешно завершилась
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д