当前位置: 代码迷 >> C语言 >> [求助]关于EOF!
  详细解决方案

[求助]关于EOF!

热度:341   发布时间:2006-11-28 19:58:22.0
[求助]关于EOF!

#include <stdio.h>

int main(void)
{
char str[10];

while(EOF != gets(str))
{
puts(str);
}

return 0;
}
main.c:7: warning: comparison between pointer and integer
:: === Build finished: 0 errors, 1 warnings ===
这是这样写的警告!另外

#include <stdio.h>

int main(void)
{
int a, b;
while(EOF != scanf("%d%d", &a, &b))
{
printf("%d", a + b);
}

return 0;

}
而这样写是正确的!当按F6时程序能够退出!
在红色字体的部分那里是要如何解释啊?

搜索更多相关的解决方案: EOF  str  int  main  

----------------解决方案--------------------------------------------------------
gets()只能接收 一个字符?

----------------解决方案--------------------------------------------------------
gets()返回char *

EOF是常数 -1
----------------解决方案--------------------------------------------------------
scanf出错时返回 -1
----------------解决方案--------------------------------------------------------
scanf什么时候能出错啊》?比如说????
是不是空格就错呢?
知道麻烦讲哈 谢谢
----------------解决方案--------------------------------------------------------
scanf("%d",&amp;i);而你输入字符A,scanf返回-1
----------------解决方案--------------------------------------------------------
同志你想搞什么!!!!!!!!!!!!!!!!!!!!
----------------解决方案--------------------------------------------------------
我是想读入一字符串,当读到EOF时结束!
----------------解决方案--------------------------------------------------------
1. while(gets(str) != NULL)


2. while(scanf("%d%d", &a, &b)==2)


3.
int ch;
...
while((ch = getchar()) != EOF)

----------------解决方案--------------------------------------------------------
以下是引用zhanghuan_10在2006-11-29 12:30:17的发言:
我是想读入一字符串,当读到EOF时结束!

while(EOF!=(scanf("%c",&c))) //读入一个字符串

while(EOF!=(scanf("%s",str)))//读入若干个字符串
----------------解决方案--------------------------------------------------------

  相关解决方案