我想在不停止执行的情况下循环获取输入,即
'
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
int main()
{
char c;
while(1)
{
if((c=getch())=='y')
printf("yesn") ;
printf("non") ;
}
return 0;
}
现在我希望无论输入如何,都应该无限打印"否",如果我按 y 应该打印 yes。然后继续从无到有。这可能吗,任何想法!
由于这似乎是在Windows上,并且您已经在使用旧的conio函数,因此您可以使用_kbhit()
加倍:
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
int main()
{
while(1)
{
if(_kbhit() && getch() == 'y')
printf("yesn");
printf("non") ;
}
return 0;
}
根据文档,_kbhit()
"检查控制台最近的击键"。这意味着,如果_kbhit()
是真的,getch()
将能够立即获得一个角色而不是阻止。