gpt4 book ai didi

c - 监听按键而不停止整个 C 程序

转载 作者:行者123 更新时间:2023-11-30 17:04:03 31 4
gpt4 key购买 nike

我正在尝试制作一个游戏,当按下某些键时对象会移动。但我想实现它,以便东西一直在移动并且循环一直在运行。到目前为止,scanf和getchar等键盘输入函数都在等待我按下一个键,直到它们允许程序继续运行。如何在不停止程序的情况下监听按键(不使用线程)?

最佳答案

有一种使用循环来实现此目的的方法。
以下程序将在循环中执行其他操作,并且在每次传递中都会检查是否已按下某个键。然后按下的键将被存储到变量c中。

#include <stdio.h>
#include <conio.h>

int main(void) {
char c = '\0';

while (1) {
if (kbhit()) {
c = getch();
}
/* If a key has been pressed */
if (c != '\0') {
/* Do something */
c = '\0'; // and put it back to \0
}

/* Do something else */
}

return 0;
}

注意:此解决方案仅适用于 Windows 和其他可以包含头文件“conio.h”的操作系统

关于c - 监听按键而不停止整个 C 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35951481/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com