《关于kbhit函数与延时函数使用.docx》由会员分享,可在线阅读,更多相关《关于kbhit函数与延时函数使用.docx(2页珍藏版)》请在三一办公上搜索。
1、关于kbhit函数与延时函数使用 关于kbhit函数与延时函数使用 在我们平时控制台程序的编写过程中,现在学到的一些输入方法都是需要暂停控制台界面,等待用户输入数据之后,程序才会继续运行下去。但是某些情况下,我们希望在循环在用户输入一个按键时才响应特定程序。这时我们就需要使用到kbhit函数。 函数名:kbhit 功 能及返回值: 检查当前是否有键盘输入,若有则返回一个非0值,否则返回0 用 法:int kbhit(void); 包含头文件: include 我们可以将kbhit函数返回的布尔值当作判断条件来进行进一步操作。 程序示例 C语言 #include #include #includ
2、e #include int main(void) cprintf(Press any key to continue:); while (!kbhit) /* do nothing */ ; cprintf(rnA key was pressed.rn); return 0; 下面的代码,如果没有键盘输入程序一直输出Hello World,直到用户按Esc结束 #include #include int main( void ) char ch; while( !kbhit ) cprintf(Hello Worldn); if( kbhit ) ch = getch; if( 27 = c
3、h ) break; cprintf(End!n); system(pause); return 0; 有时我们也需要程序暂停一段时间之后再进行后续运行,这时候我们可以用到 Sleep方法。其中括号中填写数值,以毫秒为单位。例如你想让程序暂停1秒再进行后续过程,只须中间加入Sleep;则可。 例 #include #include int main int a; a=1000; printf(你); sleep(a);/* VC 使用Sleep*/ printf(好); /*输出“你”和“好”之间会间隔一千毫秒,也就是一秒*/ return 0; 清屏函数: .#include system(cls); 可以直接将控制台中显示的东西清空。若配合高频率的Sleep函数加入到高频率循环中可以模拟动态的控制台图形。 以上三个函数在制作控制台的经典游戏中都会经常使用。