还是我,为什么这个没有清空缓冲区,但是scanf语句没有被跳过呢?
发布网友
发布时间:2022-04-29 21:41
我来回答
共3个回答
热心网友
时间:2023-10-09 10:31
不是那个意思,如下代码
#include<stdio.h>
void main()
{
int i = 1;
scanf("%d", &i);
fflush(stdin); //清空输入缓冲
scanf("%d",&i);//可以继续输入
printf("%d\n",i);
}
先输入字符,然后可以继续输入数字
如果把fflush(stdin); 删掉就直接跳过下面的scanf,不能再输入追问但是我的问题怎么解释呢?
来自:求助得到的回答
热心网友
时间:2023-10-09 10:32
你就一个scanf语句,在这之前键盘缓冲区没有任何东西,清空什么啊?
热心网友
时间:2023-10-09 10:32
如果没有给变量赋值,系统会随机输个数值
不影响后面的语句