kbhit 是一个函数,用于在控制台程序中检测键盘是否有输入。 它通常用于在控制台程序中循环检测键盘输入,以便用户可以在程序运行时按下键盘。
如果按下键盘后没有反应,可能是出现了以下几种情况之一:
kbhit 函数没有正确地设置。 在调用 kbhit 函数之前,需要调用另一个函数 nodelay,用于设置键盘输入是否立即返回。 如果 nodelay 函数没有正确设置,kbhit 函数可能无法检测到键盘输入。
程序中可能有其他输入/输出操作,这些操作可能会将键盘输入缓存起来,导致 kbhit 函数无法立即检测到键盘输入。 在这种情况下,可以尝试在调用 kbhit 函数之前调用 fflush 函数,用于清空输入/输出缓存。
在调用 kbhit 函数之后,可能需要使用 getch 函数获取键盘输入。 如果没有调用 getch 函数,则键盘输入可能不会被处理。