scanf返回正确读入的数的个数
如
x = scanf("%d%d%d", &x, &y, &m);
printf("%d", x);
--------------------------------
input:1 2 3;
output:3;
--------------------------------
input:1 2 x;
output:2;
--------------------------------
input:1 x y;
output:1;
--------------------------------
input:x y z;
output:0;
有时候scanf会返回-1,这里的-1其实就EOF常量,表示读入操作结束的意思,Ctrl+Z为其按键。
while(scanf("%d", &x))
|| while(scanf("%d", &x) != EOF)
一般来说,这两种都可以表示输入的结束,不同的是前者中断输入需要输入不是INT型的数,后者需要输入Ctrl+Z。
---------------------------------------------------------------------------------------------------------------------------------------------------------
另外在C++中,也可以用类似的写法来写:
while (cin >> x)