全网整合营销服务商

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

免费咨询热线: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 


相关文章: Android自定义控件实现温度旋转按钮效果  洛阳网站制作公司有哪些,洛阳的招聘网站都有哪些?  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  如何配置FTP站点权限与安全设置?  5种Android数据存储方式汇总  如何快速搭建高效简练网站?  免费制作小说封面的网站有哪些,怎么接网站批量的封面单?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  微信小程序 input输入框控件详解及实例(多种示例)  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  如何选购建站域名与空间?自助平台全解析  如何基于云服务器快速搭建网站及云盘系统?  如何登录建站主机?访问步骤全解析  php json中文编码为null的解决办法  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  建站之星后台管理系统如何操作?  焦点电影公司作品,电影焦点结局是什么?  装修招标网站设计制作流程,装修招标流程?  香港服务器网站推广:SEO优化与外贸独立站搭建策略  网站app免费制作软件,能免费看各大网站视频的手机app?  建站之星如何优化SEO以实现高效排名?  定制建站策划方案_专业建站与网站建设方案一站式指南  建站之星如何开启自定义404页面避免用户流失?  建站之星代理如何优化在线客服效率?  如何在宝塔面板中修改默认建站目录?  北京的网站制作公司有哪些,哪个视频网站最好?  网站制作员失业,怎样查看自己网站的注册者?  微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?  手机网站制作与建设方案,手机网站如何建设?  建站之星如何实现五合一智能建站与营销推广?  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  全景视频制作网站有哪些,全景图怎么做成网页?  如何在阿里云ECS服务器部署织梦CMS网站?  网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?  如何基于PHP生成高效IDC网络公司建站源码?  魔毅自助建站系统:模板定制与SEO优化一键生成指南  清除minerd进程的简单方法  婚礼视频制作网站,学习*后期制作的网站有哪些?  c# F# 的 MailboxProcessor 和 C# 的 Actor 模型  建站之星安装后如何配置SEO及设计样式?  如何在Ubuntu系统下快速搭建WordPress个人网站?  建站之星CMS建站配置指南:模板选择与SEO优化技巧  小自动建站系统:AI智能生成+拖拽模板,多端适配一键搭建  如何在阿里云域名上完成建站全流程?  视频网站app制作软件,有什么好的视频聊天网站或者软件?  建站之星安装后界面空白如何解决?  江苏网站制作公司有哪些,江苏书法考级官方网站?  如何确保FTP站点访问权限与数据传输安全?  如何用景安虚拟主机手机版绑定域名建站? 

您的项目需求

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