这句话是什么意思
int n;while(scanf("%d",&n)!=EOF){}
这里不能直接写成scanf("%d",&n)吗?EOF有什么用?,谢谢~学c的时候没学好 -.-
----------------解决方案--------------------------------------------------------
scanf("%d",&n)!=EOF
如果你的输入没错误```那么就返回成功输入的参数的个数``你这里有一个参数`输入没问题就返回1
输入EOF``就返回EOF``
----------------解决方案--------------------------------------------------------
windows下EOF为ctrl+z````
并且要换新的一行输入```
----------------解决方案--------------------------------------------------------
不能这么写,不是因能你的格式不对,而scanf()的返回值的问题.
当输入成功返回1,不成功返回0
而EOF在#include<stdio.h>的宏定义如下:
#define EOF (-1) /* End of file indicator */
所以,scanf()的返回值不可能为EOF.
至于,EOF的作用在宏定义的解释中明确写出.
----------------解决方案--------------------------------------------------------
楼上正解!EOF是end of file的意思。
----------------解决方案--------------------------------------------------------