int getch()
{
struct termios tm,tm_old;
int fd=0,ch;
if(tcgetattr(fd,&tm)<0){//保存现在的终端设置
return -1;
}
tm_old=tm;
cfmakeraw(&tm);//更改终端为原始模式,该模式数据以字节为单位处理
if(tcsetattr(fd,TCSANOW,&tm)<0){
return -1;
}
ch=getchar();
if(tcsetattr(fd,TCSANOW,&tm_old)<0){//更改最初的样子
return -1;
}
return ch;
}linux-getch函数
最新推荐文章于 2021-05-04 21:56:39 发布
本文介绍了一个用于实现非阻塞字符输入的C语言函数intgetch()。该函数通过临时改变终端属性来允许程序不等待用户按下回车键即可读取键盘输入的字符,并在读取后恢复原有的终端设置。
890

被折叠的 条评论
为什么被折叠?



