C语言

C语言中getch()函数详解(附实例)

时间:2025-04-27 10:54:31 C语言 我要投稿
  • 相关推荐

C语言中getch()函数详解(附实例)

  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的用法06-01

C语言中Swift函数调用实例09-25

C语言中文件操作详解及实例代码08-24

c语言中有关随机函数的使用详解07-23

C语言中指针变量作为函数参数详解07-01

C语言中函数的区分08-30

java调用c函数的实例09-16

C语言中gets()函数知识08-10

C语言中关于时间的函数10-24