位置: 首頁 > 計算機 > C語言

C語言中getch()函式詳解(附例項)

2014-11-14 C語言

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 ;

}

}

標籤:getch 例項 函式 語言
2014-10-17
2016-07-15
2015-02-01
2016-06-28
2019-12-26
2014-11-16
2016-10-14
2014-11-16
2015-01-10
2018-02-18

Copyright ©2024 才華齋 All Rights Reserved.