C语言中的EOF符号常量
先看一段代码
读一个字符
while(该字符不是文件结束指示符)
输出刚读入的字符
读下一个字符
*/
#include <stdio.h>
int main()
{
int c;
while((c=getchar())!= EOF)
{
putchar(c);
}
return 0;
}
如何区分文件中的有效数据和输入结束符呢?
C语言采用的解决办法是:在没有输入时getchar函数将返回一个特殊值,这个特殊值与任何实际字符都不同。这个值成为EOF(end of file ,文件结束)。我们在声明变量c 的时候,必须让它大到足以存放getchar函数返回的任何值。之所以不把c声明成char类型,是因为它必须足够大,除了能存储任何可能的字符外还要能存储文件结束符EOF。
EOF的输入由系统锁定。windows下是ctrl+z,linux/unix下是ctrl+d,具体可以s参考这里。
打印EOF的值
*/
#include <stdio.h>
int main()
{
printf("EOF is %d\n",EOF);
return 0;
}
符号常量EOF是在头文件<stdio.h>中定义的。程序中,printf()语句双引号外的EOF将被替换为头文件<stdio.h>中
#define EOF
定义的值。不同的系统中,被定义的值不唯一。这也是使用EOF等标准常量能够增加程序可移植性的原因所在。
转载于:https://www.cnblogs.com/Ryan_j/archive/2011/01/09/1931513.html
C语言中的EOF符号常量相关推荐
- C语言中的EOF和feof()
在c语言中经常用EOF和feof()来判断文件的结束,现将有关用法总结如下: 定义 EOF是End Of File 的缩写,是c语言中标准库中定义的宏,定义为:#define EOF (-1): ...
- c语言中eof的作用,深入解读C语言中的符号常量EOF
EOF是指文件的结束符,是一个宏定义 借助于getchar 与putchar 函数,可以在不了解其它输入/输出知识的情况下编写出 数量惊人的有用的代码.最简单的例子就是把输入一次一个字符地复制到输出, ...
- C语言中EOF的应用
C语言中EOF的应用 2008年06月26日 星期四 13:58 1.5.1. 文件复制 借助于getchar 与putchar 函数,可以在不了解其它输入/输出知识的情况下编写出 数量惊人的有用的代 ...
- c语言中区别一般变量,C语言中,为了区别一般的变量,符号常量必须用
C语言中,为了区别一般的变量,符号常量必须用大写字母表示.(?) 答:错 ,维也纳古典乐派代表人物之一,欧洲古典主义时期作曲家.因其对古典音乐的重大贡献,对奏鸣曲式和交响曲套曲结构的发展和创新,而被后 ...
- 关于c语言中EOF用法的理解
作者:Senlern 转载请注明,原文链接:http://blog.csdn.net/zhang429350061/article/details/8760636 首先看一下EOF的官方解释: 计算机 ...
- 在c 语言中 引用数组元素时,【单选题】在 C 语言中,引用数组元素时,其数组下标的数据类型不允许是
A. 整型常量 B. 整型表达式 C. 整形符号常量 D. 整型变量...
[单选题]在 C 语言中,引用数组元素时,其数组下标的数据类型不允许是 A. 整型常量 B. 整型表达式 C. 整形符号常量 D. 整型变量 更多相关问题 [单选] 焖饭和蒸饭哪个更节省燃气?() [ ...
- C语言中EOF的用法及不同环境下的使用
C语言中EOF的含义是end of file,即文件结束符,但是不仅仅是在文件中使用,在输入的时候也可以使用.EOF的值是-1.在文本文件中才能使用EOF作为结束符.在使用scanf输入的时候,如果输 ...
- c语言eof不起作用,c语言中EOF的用法
c语言中EOF的用法以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! c语言中EOF的用法 1.EOF是end of fi ...
- c语言中switch语句流程图_全国计算机二级知识点汇总(C语言等)
点击蓝字 关注我们 全国计算机二级知识点汇总 算法的有穷性是指:算法程序的运行时间是有限的 算法的空间复杂度是指:算法在执行过程中所需要的临时工作单元数 算法的时间复杂度是指:算法在执行过程中所需要的 ...
最新文章
- UWP Composition API - RadialMenu
- DLL 的导入与导出
- 12-16php测试题
- 16-python基础5-文件读写操作
- 嵌入式开发硬件知识札记
- 什么电脑的牌子好用_扬州诚招电动牙刷代理有什么牌子比较好用
- Java面试——RabbitMQ系列总结
- (51)多路时钟复用概述
- linux打包根目录
- Python常用模块 之 base64模块
- LWN: lockless编程模式——relaxed access和partial memory barrier
- [娱乐]帝国时代I:罗马复兴秘籍
- 编译安装httpd服务
- Apache Ozone0.4.0调研
- 传大疆北美裁员1/3,离职高管透露内部斗争严重
- 利用python如何抓取微博评论?
- 逻辑地址 与物理地址的转换
- 大数据缺省值插补方法(回归填补[stochastic regression imputation],聚类填补,。。)
- python3 模块大全_Python3 模块 | 菜鸟教程
- [MICCAI2019]Multi-view Learning with Feature Level Fusion for Cervical Dysplasia Diagnosis