我在linux操作系统上使用c语言编程。我正在写一个程序扫描用户的输入。不过,我希望扫描有一定的时间限制。例如,如果用户在10秒钟内没有在键盘上输入任何内容,它将跳过scanf并转到下一行。我正在使用alarm(10)等待10秒,但是当我转到alarmhandler时,我不知道如何跳过scanf。
是否有跳过扫描或写入输入缓冲区的函数?
最佳答案
您可以使用select(2)
或poll(2)
指定超时并检查stdin
是否有输入。
关于c - 用C语言以编程方式终止scanf,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4058902/