當前位置

首頁 > 商務英語 > 計算機英語 > c語言中getch的用法

c語言中getch的用法

推薦人: 來源: 閱讀: 3.09W 次

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

ing-bottom: 56.25%;">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 continuen");

printf("%dn", 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>