學習啦 > 學習英語 > 專業(yè)英語 > 計算機英語 > c語言中getch的用法

c語言中getch的用法

時間: 長思709 分享

c語言中getch的用法

  getch()函數(shù)是無回顯的從控制臺取得一個字符。以利用getch()函數(shù)讓程序調試運行結束后等待編程者按下鍵盤才返回編輯界面,即任意鍵繼續(xù)效果。下面小編就跟你們詳細介紹下c語言中getch的用法,希望對你們有用。

  c語言中getch的用法如下:

  [cpp] view plain copy

  #include <stdio.h>

  #include <conio.h>

  int main()

  {

  int i ;

  i = getch();

  printf("press any key to continue\n");

  printf("%d\n", i);

  return 0;

  }

  Windows下getch()在conio.h的頭文件中,但conio.h不是標準庫文件,C standard library,ISO C 和POSIX標準中均沒有定義。固然Linux系統(tǒng)中會沒有這個頭文件,網上說在curses.h,然后下載一個庫,但弄了半天也沒成功取得,從網上找到了一個方法實現(xiàn)getch()的功能。

  [cpp] view plain copy

  int getch()

  {

  struct termios tm, tm_old;

  int fd = STDIN_FILENO,c;

  if (tcgetattr(fd, &tm) < 0)

  {

  return -1;

  }

  tm_old = tm;

  cfmakeraw(&tm);

  if (tcsetattr(fd, TCSANOW, &tm) < 0)

  {

  return -1;

  }

  c = fgetc(stdin);

  if (tcsetattr(fd,TCSANOW,&tm_old) < 0)

  {

  return -1;

  }

  return c;

  }

  直接可以這樣用:

  [cpp] view plain copy

  /******************************************************************

  *描述: 實現(xiàn)任意鍵繼續(xù)

  *參數(shù): void

  *返回值: void

  *******************************************************************/

  void press_key()

  {

  printf("任意鍵繼續(xù)...\n");

  getch();

  }

  頭文件

  [cpp] view plain copy

  #include <stdio.h>

  #include <stdlib.h>

  #include <termios.h>

  #include <unistd.h>

熱門文章

522944