最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
C语言中getch()函数详解及简单实例
时间:2017-07-31 编辑:简简单单 来源:一聚教程网
C语言中getch()函数详解及简单实例
前言:
这个函数是一个不回显函数,当用户按下某个字符时,函数自动读取,无需按回车,有的C语言命令行程序会用到此函数做游戏,但是这个函数并非标准函数,要注意移植性!
所以有这样的一个接口,那就很牛逼了,至少可以做个游戏来玩下,结合ASCII码,很容易写个方向键控制的2048或者贪吃蛇等等有趣的游戏出来。
以下是以一个简单的例子:
你会发现当你按下对应的按键的时候就会打印相应的语句。
代码如下 | 复制代码 |
#include #include #include #define ESC 0x1B #define ENTER 0x0D #define SPACE 0x20 #define KEY_UP 72 //上 #define KEY_DOWN 80 //下 #define KEY_LEFT 75 //左 #define KEY_RIGHT 77 //右
intKEY_EXIT_STATU = 0 ; intKEY_ENTER_STATU = 0 ; intKEY_SPACE_STATU = 0 ;
intKEY_UP_STATU = 0 ; intKEY_DOWN_STATU = 0 ; intKEY_LEFT_STATU = 0 ; intKEY_RIGHT_STATU = 0 ;
charch ;
intget_value() ; intmain(void) {
inti = 0; while(1) { get_value(); } return0 ; }
intget_value() { ch = getch() ; system("cls"); switch(ch) { caseESC : KEY_EXIT_STATU = 1 ; printf("退出\n") ;break; caseENTER :KEY_ENTER_STATU = 1 ; printf("回车\n") ;break; caseSPACE : KEY_SPACE_STATU = 1 ; printf("空格\n") ;break; caseKEY_UP:case'w': KEY_UP_STATU = 1 ; printf("上\n") ;break; caseKEY_DOWN:case's': KEY_DOWN_STATU = 1 ; printf("下\n") ;break; caseKEY_LEFT:case'a': KEY_LEFT_STATU = 1 ; printf("左\n") ;break; caseKEY_RIGHT:case'd': KEY_RIGHT_STATU = 1 ; printf("右\n") ;break; } } |
-
上一个: 浅谈C#中的Infinity和NaN
-
下一个: 彻底掌握ASP分页技术杂谈
相关文章
- C#复制数组的两种方式及效率比较解读 10-24
- ASP.NET Identity用法解析 10-24
- ASP.NET MVC使用Identity增删改查用户介绍 10-24
- C语言中atoi函数模拟实现介绍 10-18
- .Net反向代理组件Yarp用法介绍 10-10
- .NET使用YARP通过编码方式配置域名转发实现反向代理教程 10-10