怎么在重定向标准输入后无阻塞的获取终端按键(在linux下用c语言实现)?

在实现more命令时所遇到的问题
未考虑重定向前,无阻塞的获取终端按键是如下代码所示实现的
fp_tty=fopen("/dev/tty","rw");
//更改终端属性,使字符立即输入且不显示
tcgetattr(0,&oldt);
newt=oldt;
newt.c_lflag&=~(ICANON|ECHO);
tcsetattr(0,TCSANOW,&newt);
intch=fgetc(fp_tty);
重定向后发现fp_tty始终为NULL
一只名叫tom的猫
浏览 461回答 2
2回答

拉丁的传说

原来你是想要实现类似more的功能啊。这里是ubuntu的较新版本的more的源代码,只有一个文件,读起来会比较方便。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript