为getchar()添加超时

bra*_*n56 6 c time timeout input getchar

我需要在程序中为getchar()添加一个超时函数.

我该怎么办,当我的程序到达指令getchar()时,它只会等待一段时间让用户进行击键,如果用户没有在给定的时间限制内进行击键,程序将"跳过"getchar()?

操作系统不支持conio.h库,因此kbhit不是一个选项.

Thi*_*ter 6

这通常是通过使用获得select()stdin.另一个解决方案是使用alarm()和一个伪SIGALRM处理程序来中断getchar()调用(虽然只在POSIX系统上工作).