C语言文本结束标识问题

EOF是字符吗?需要用字节存储它吗?如果不存储它,怎么找到他来判断文本结束?... EOF是字符吗?需要用字节存储它吗?如果不存储它,怎么找到他来判断文本结束? 展开
 我来答
百度网友ecdc68a
推荐于2017-11-25 · TA获得超过343个赞
知道小有建树答主
回答量:444
采纳率:0%
帮助的人:244万
展开全部
在C语言中,或更精确地说成C标准函式库中表示文件结束符(end of file)。在while循环中以EOF作为文件结束标志,这种以EOF作为文件结束标志的文件,必须是文本文件。在文本文件中,数据都是以字符的ASCII代码值的形式存放。我们知道,ASCII代码值的范围是0~255,不可能出现-1,因此可以用EOF作为文件结束标志。

C语言中,EOF常被作为文件结束的标志。还有很多文件处理函数处错误后的返回值也是EOF,因此常被用来判断调用一个函数是否成功。
  例如:
  #include <stdio.h>
  int main()
  {
  int n;
  int array[25];
  while (scanf("%d",&n),n!=EOF)
  {
  for (int i=0; i<n; i++)
  scanf("%d",array+i);
  for (i=0; i<n; i++)
  printf ("%d ",array[i]);
  }
  return 0;
  }
更多追问追答
追问
你好  我明白是一个文件结尾标记,但是是否会存储它?
追答
这个不用关心吧
系统自己会分配的

参考资料: 百度百科

zhyntc
2012-10-26 · TA获得超过475个赞
知道小有建树答主
回答量:369
采纳率:100%
帮助的人:353万
展开全部
系统会自动加的,就比如char最后的\0一样
用的时候只要直接判断就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3d7a611
2018-01-13
知道答主
回答量:1
采纳率:0%
帮助的人:917
展开全部
count=last-1;count>=0;读取的是从0~last-1,总个数就是last.
任何文件都可以用UE或notepad文本工具打开,以16进制格式查看文件最后一个字符是否带EOF
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式