对,scanf 函数有返回值,今天看到有段程序如下,才知道 scanf 函数有返回值:
while (sxanf("%d", &x) == 1)
{
statement;
}
scanf 函数的返回值反映的是按照指定的格式符正确读入的数据的个数,而不管你输入表项是否齐全。当输入结束时,scanf 函数无法再次读取 x,将返回0。
int main()
{
int a;
int b;
int x = scanf("%d%d", &a, &b);
printf("%d\n", x);
system("pause");
return 0;
}
可以看出:
如果a和b都被成功读入,那么scanf的返回值就是2,
如果只有a被成功读入,返回值为1,
如果a和b都未被成功读入,返回值为0。