学习啦>学习英语>专业英语>计算机英语>

c语言中getch的用法

长思分享

  getch()函数是无回显的从控制台取得一个字符。以利用getch()函数让程序调试运行结束后等待编程者按下键盘才返回编辑界面,即任意键继续效果。下面小编就跟你们详细介绍下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系统中会没有这个头文件,网上说在curses.h,然后下载一个库,但弄了半天也没成功取得,从网上找到了一个方法实现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

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

  *描述: 实现任意键继续

  *参数: void

  *返回值: void

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

  void press_key()

  {

  printf("任意键继续...\n");

  getch();

  }

  头文件

  [cpp] view plain copy

  #include <stdio.h>

  #include <stdlib.h>

  #include <termios.h>

  #include <unistd.h>

    522944