怎么理解C语言中这问题

来源:百度知道 编辑:UC知道 时间:2024/06/03 15:43:55
#include<stdio.h>
void main()
{
int a,b,c;
while(c=(scanf("%d %d",&a,&b)))
{
if(c==2)
printf("%d %d\n",a,b);
else
{
printf("error!\n");
break;
}
}
getch();
}
其中
c=(scanf("%d %d",&a,&b))和c==2
这怎么理解?

scanf()函数返回成功赋值的数据项数,出错时则返回EOF
这里如果c=2就是说两个数都成功输入了。

至于整个函数是干什么的这么一说后也很显然了,请你好好思考。

在c中“==”是“等于”的意思,“=”是“赋值”的意思。