为什么scanf在while循环中表现怪异?

时间:2019-03-28 23:10:42

标签: c while-loop scanf

我将scanf用作while循环条件。它检查scanf的返回值,如果为0,则应该输出一条消息,然后重新执行scanf直到输入有效值,返回值为1。

…
int n = 0;
while(scanf(" %d",&n) == 0)
{
    printf("Please enter a valid value!");
}
…

由于scanf处于while循环,因此不仅要打印一个“请输入一个有效值”,然后要求用户再次插入一个新值,它会无限循环并打印一百万条消息时间...有什么想法吗?

0 个答案:

没有答案