我怎样才能在循环中进行定时器/内部我有扫描?
如果时间结束且用户没有输入任何输入,则循环/结束时!像琐事..
while(30 sec)
{
scanf("%d,&try);
}
如果30秒结束循环结束并且内部尝试我有-1 !!
我只能使用4个包含..
#include <stdio.h>
#include<stdlib.h>
#include<string.h>
#include <time.h>
TNX!
答案 0 :(得分:3)
仅使用C标准库是不可能的,因此您列出的4个标题是不够的。 scanf
将等待用户按Enter键,并且在30秒后无法使用平台特定功能或额外库(隐藏平台特定功能)来中断它。
作为通用解决方案的指南,您需要一种从终端获取字符的方法,以便您也可以在特定时间后中断。因此,您将逐个字符地阅读并将它们放入缓冲区,直到达到您的时间限制或用户按下Enter键(请注意,例如getchar()
不可能这样做,因为即使它给您一个字符,它会一直阻塞,直到用户按下回车键,然后逐个输入输入的字符。
然后,一旦你有一整行(或者可能直到空间,或者直到你读了N个数字,或者你想要做什么),使用sscanf
或strtol
或其他来解析字符串并得到你想要的整数。
答案 1 :(得分:0)
对于其他图书馆,这是可能的。 Look at this question.
Look here以kbhit为例。您将对此有一些限制,请参阅注释以获取详细信息。