全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

C语言中getch()函数详解及简单实例

C语言中getch()函数详解及简单实例

前言:

这个函数是一个不回显函数,当用户按下某个字符时,函数自动读取,无需按回车,有的C语言命令行程序会用到此函数做游戏,但是这个函数并非标准函数,要注意移植性!

所以有这样的一个接口,那就很牛了,至少可以做个游戏来玩下,结合ASCII码,很容易写个方向键控制的2048或者贪吃蛇等等有趣的游戏出来。

       以下是以一个简单的例子:

你会发现当你按下对应的按键的时候就会打印相应的语句。

#include <stdio.h> 
#include <fcntl.h> 
#include <stdlib.h> 
#include <conio.h> 
#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  //右 
 
int KEY_EXIT_STATU = 0 ; 
int KEY_ENTER_STATU = 0 ;  
int KEY_SPACE_STATU = 0 ;  
 
int KEY_UP_STATU =   0 ;  
int KEY_DOWN_STATU =  0 ;  
int KEY_LEFT_STATU =  0 ;  
int KEY_RIGHT_STATU = 0 ;  
 
char ch ;  
 
int get_value() ; 
int main(void) 
{ 
 
  int i = 0; 
  while(1)  
  { 
    get_value(); 
  } 
  return 0 ;  
} 
 
int get_value() 
{ 
  ch = getch() ; 
  system("cls"); 
  switch(ch) 
  { 
      case ESC : KEY_EXIT_STATU = 1 ;       
            printf("退出\n") ; break ;  
      case ENTER :KEY_ENTER_STATU = 1 ;       
            printf("回车\n") ; break ;  
      case SPACE :  
            KEY_SPACE_STATU = 1 ;       
            printf("空格\n") ; break ;  
      case KEY_UP:case 'w' :  
            KEY_UP_STATU = 1 ; 
            printf("上\n") ; break ; 
      case KEY_DOWN:case 's' : 
            KEY_DOWN_STATU = 1 ;  
            printf("下\n") ; break ; 
      case KEY_LEFT:case 'a' : 
            KEY_LEFT_STATU = 1 ; 
            printf("左\n") ; break ; 
      case KEY_RIGHT:case 'd': 
            KEY_RIGHT_STATU = 1 ; 
            printf("右\n") ; break ; 
  } 
} 



感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# C语言getch()函数  # C语言中getch()函数介绍  # getch()函数  # 按下  # 是一个  # 就会  # 那就  # 当你  # 很容易  # 要注意  # 希望能  # 做个  # 不回  # 会用  # 谢谢大家  # 到此  # 你会发现  # 来玩  # 命令行  # 方向键  # 按回车  # 贪吃蛇  # stdio 


相关文章: 长沙做网站要多少钱,长沙国安网络怎么样?  开心动漫网站制作软件下载,十分开心动画为何停播?  网站制作费用多少钱,一个网站的运营,需要哪些费用?  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  如何用腾讯建站主机快速创建免费网站?  如何在阿里云部署织梦网站?  如何在IIS中新建站点并解决端口绑定冲突?  佛山网站制作系统,佛山企业变更地址网上办理步骤?  如何通过NAT技术实现内网高效建站?  建站主机选哪种环境更利于SEO优化?  建站之星24小时客服电话如何获取?  青浦网站制作公司有哪些,苹果官网发货地是哪里?  制作电商网页,电商供应链怎么做?  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  专业商城网站制作公司有哪些,pi商城官网是哪个?  如何解决VPS建站LNMP环境配置常见问题?  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  建站三合一如何选?哪家性价比更高?  小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?  如何在阿里云通过域名搭建网站?  如何选择最佳自助建站系统?快速指南解析优劣  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  Python如何创建带属性的XML节点  北京网站制作公司哪家好一点,北京租房网站有哪些?  如何正确选择百度移动适配建站域名?  深圳 网站制作,深圳招聘网站哪个比较好一点啊?  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  如何做网站制作流程,*游戏网站怎么搭建?  如何高效搭建专业期货交易平台网站?  购物网站制作公司有哪些,哪个购物网站比较好?  如何挑选最适合建站的高性能VPS主机?  网站微信制作软件,如何制作微信链接?  一键网站制作软件,义乌购一件代发流程?  招商网站制作流程,网站招商广告语?  如何用低价快速搭建高质量网站?  ,巨量百应是干嘛的?  如何快速启动建站代理加盟业务?  html制作网站的步骤有哪些,iapp如何添加网页?  如何在IIS中配置站点IP、端口及主机头?  建站VPS选购需注意哪些关键参数?  武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?  建站主机空间推荐 高性价比配置与快速部署方案解析  c++怎么用jemalloc c++替换默认内存分配器【性能】  岳西云建站教程与模板下载_一站式快速建站系统操作指南  建站主机解析:虚拟主机配置与服务器选择指南  Android自定义listview布局实现上拉加载下拉刷新功能  安云自助建站系统如何快速提升SEO排名?  建站之星收费标准详解:套餐费用及年费价格表一览  建站中国官网:模板定制+SEO优化+建站流程一站式指南  建站之星安装路径如何正确选择及配置? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。