Просто для удовольствия я попробовал распечатать kbhit()
с помощью циклов, чтобы программа после нажатия клавиши kbhit()
линию бесконечно до тех пор, пока не будет нажата клавиатура. Он хорошо компилируется и при запуске просто дает пустой экран. Нет отпечатков. Но при одном нажатии заканчивается программа. Однако консоль не закрывается.
#include #include int main() { while(1) { if(kbhit()) { while(1) { if(kbhit()) { goto out; } printf("Print Ed Infinitum Until Key Press"); } } } out: return 0; }
в#include #include int main() { while(1) { if(kbhit()) { while(1) { if(kbhit()) { goto out; } printf("Print Ed Infinitum Until Key Press"); } } } out: return 0; }
в#include #include int main() { while(1) { if(kbhit()) { while(1) { if(kbhit()) { goto out; } printf("Print Ed Infinitum Until Key Press"); } } } out: return 0; }
Как я могу это решить?
int main(void){ while(1){ if(kbhit()){ getch(); while(1){ if(kbhit()){ getch(); goto out; } printf("Print Ed Infinitum Until Key Press\n"); } } } out: return 0; }
вint main(void){ while(1){ if(kbhit()){ getch(); while(1){ if(kbhit()){ getch(); goto out; } printf("Print Ed Infinitum Until Key Press\n"); } } } out: return 0; }
вint main(void){ while(1){ if(kbhit()){ getch(); while(1){ if(kbhit()){ getch(); goto out; } printf("Print Ed Infinitum Until Key Press\n"); } } } out: return 0; }
Вы нажимаете клавишу:
Прежде чем вводить второй цикл, вам нужно удалить первое нажатие клавиши, и вы должны попросить вас нажать клавишу, чтобы начать программу. Или вы могли бы просто прыгнуть во второй цикл.