为什么在scanf -1之后的while周期中会有?

时间:2019-03-29 12:05:19

标签: c

我不知道为什么在scanf()之后出现> -1!

while(scanf("%f %f %f %f", &x1,&x2,&y1,&y2)>-1 && (x1!=0 && x2!=0 && y1!=0 && y2!=0) )
{
   x=x1/x2;
   y=y1/y2;

1 个答案:

答案 0 :(得分:0)

如果成功,scanf返回成功分配的参数数量。 如果在分配第一个参数之前发生MATCHING失败,则scanf返回0并 如果在分配第一个参数之前发生INPUT失败,则返回EOF。 现在,您的问题的答案:EOF扩展为-1,所以您的while类似于while(“ scanf()中没有输入错误” && ..)。