有什么办法在获取用户输入字符的同时不中断程序办法,比如一边执行某个函数一边继续等待用户输入数据
用 kbhit()函数检测键盘是否有键按下。kbhit()函数包含在 #include<conio.h> 头文件中
如果有键按下,返回非0值;否则返回0。
kbhit不等待键盘按键。无论有无按键都会立即返回。
如判断有键按下再用getch()读取即可
例如下面的代码,如果没有键盘输入程序一直输出“Hello World”,直到用户按Esc结束。
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
int main()
{
char ch=0;
while(ch != 27)
{
printf("Hello World\n");
if(kbhit())
ch = getch();
}
printf("End!\n");
system("pause");
return 0;
}
用多线程可以实现。