c语言中getch的用法

2016-12-02

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 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>

更多相关阅读

最新发布的文章