【发布时间】:2014-01-10 12:10:35
【问题描述】:
我想写一个函数来告诉我标准输入缓冲区是否为空。 所以,这里是代码:
int buff_empty()
{
char buffer[3];
fgets(buffer, 3, stdin);
if(strlen(buffer) > 1) return 0;
return 1;
}
但问题是 - 我不希望 fgets() 等待我的输入。我正在使用我自己的函数来读取,例如,一个整数,然后用这个函数检查缓冲区是否为空(放置了多个数字)。
函数运行良好,但是当我读取一个数字时(读取函数只读取空白,就像 scanf()),它会等待一个断线(Enter?)。有什么办法解决吗?
提前致谢!
【问题讨论】:
-
那么,有没有办法通过代码在标准输入中设置断线?这也可以,因为 fgets() 等待我的输入。