EOF(EndOfFile)是C语言中的文件结束标志符。当C语言输入函数获取到文件结尾标志时,会通过返回值的方式体现该值。所以要以输入EOF为结束,就需要判断输入函数的返回值。EOF定义在stdio.h中,与常用的输入函数相同,所以不需要额外引用头文件。以下根据输入函数不同,分别说明EOF的判断。1getchargetchar函数的功能是读入一个字符。适用于逐个字符输入的情况。其返回值为int型,常见的做法是赋值给char型变量,但如果要检查EOF,则必须将返回值赋值给int型。代码:int c;while(1){    c = getchar();//读入一个字符。    if(c == EOF)break;//如果遇到EOF则退出循环,即结束输入。}2scanfscanf是最常用的C语言输入,其作用为格式化输入,可以用来输入各种类型的变量值。以int型为例:int c, ret;while(1){    ret = scanf("%d",&c);//读入一个整型值。    if(ret == EOF)break;//如果遇到EOF则退出循环,即结束输入。注意判断的是返回值,而不是读入的变量。}3getsgets作用是读入一行数据,存到字符数组中,并把读到的换行符转换为字符串结束符。正常情况下其返回值为传入的指针,当遇到EOF时,其返回NULL(空指针)。所以用gets读入时可以这样判断:char s[100];while(1){    if(gets(s) == NULL) break;// 当gets返回NULL时代表遇到EOF,结束输入。}当输入为文件时,遇到文件结尾C语言可以自动识别EOF,但如果输入为命令行交互模式,那么需要手动输入EOF.在windows平台输入EOF的方法为,同时按下ctrl和z键。如果是unix/linux平台,则需要同时按下ctrl+d键。

阅读全文 >

c语言eof不起作用,c语言程序设计 怎么以输入EOF结束相关推荐

  1. c语言程序头文件作用,C语言头文件

    C语言头文件教程 C 语言的头文件一般都是 .h 做为结尾的. C语言头文件详解 语法 #include 参数 参数 描述 filename 我们需要引入的头文件的名称. 说明 C 语言的头文件一般都 ...

  2. c语言对编程对作用,c语言编程心得体会

    c语言编程心得体会 c语言是在国内外广泛使用的一种计算机语言.以下是小编整理的c语言编程心得体会,欢迎大家阅读! c语言编程心得体会1 说到我学习c语言时,真是用千言万语呀!记得刚开始学的时候,我的c ...

  3. c语言的应用与作用,C语言主要应用在什么地方?

    C语言是一种计算机程序设计语言.它既有高级语言的特点,又具有汇编语言的特点.它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序.因此,它的应用范围 ...

  4. c语言链表head的作用,c语言链表的用法

    c语言链表的用法 链表是数据结构中比较基础也是比较重要的类型之一,那么有了数组,为什么我们还需要链表呢!或者说设计链表这种数据结构的初衷在哪里?下面小编就为大家介绍下c语言链表的用法. c语言枚举的用 ...

  5. c语言(cn)括号的作用,c语言小括号的用法

    c语言小括号的用法 C语言的小括号里面表示一条语句,返回值是多条语句中最靠右的语句的返回值,比如(a=2,b=3,c=a+b),返回值就是c的值.下面小编就为大家介绍c语言小括号的用法. c语言小括号 ...

  6. c语言里面%c什么作用,C语言里面,%d%c%f分别是什么意思?怎么用?

    这几个都是格式字符 在输出不同数据时要用不同的的格式字符%d是用来输出十进制整型数据的实际长度输出 %c是以字符形式输出,只输出一个字符 %f是以小数形式输出单.双精度度数,隐含输出6位小数 还有很多 ...

  7. c语言位与运算的作用,c语言位运算符的用法

    c语言位运算符的用法 C语言中位运算的运算分量只能是整型或字符型数据,位运算把运算对象看作是由二进位组成的位串信息,按位完成指定的运算,得到位串信息的结果.下面小编就为大家介绍下c语言位运算符的用法. ...

  8. c语言文件有什么作用,C语言文件的使用方法

    C语言文件的使用方法 C语言文件的使用方法:所谓"文件"是指一组相关数据的有序集合. 这个数据集有一个名称,叫做文件名. 实际上在前面的各章中我们已经多次使用了文件,例如源程序文件 ...

  9. c语言输入函数有什么作用,c语言的输入函数有哪些

    c语言的输入函数有:1.scanf()函数.从标准输入stdin读取格式化输入:2.getchar()函数,从标准输入stdin获取一个字符:3.gets()函数,从标准输入stdin读取一行:4.g ...

最新文章

  1. 如何在 bash 中使用索引数组
  2. shell脚本例子集锦
  3. [原创]RCP项目:数字图像处理软件
  4. 腾讯物联网开发者社区平台Tencent Things Network发布 让IoT应用开发快速安全
  5. PullToRefreshListView中嵌套ViewPager滑动冲突的解决
  6. C++ 读取文件操作
  7. win7查找计算机图片,win7电脑图片查看器丢失了的修复教程
  8. C语言cat函数的功能,R语言cat()函数
  9. Android手机端编程开发软件合集(一)
  10. gitlab项目自动同步到测试服务器
  11. php的sql什么意思,php sql删除语句是什么
  12. LogicFlow 来绘制兼容 BPMN2.0 规范的流程 (React hooks版)
  13. 分享105个PHP源码,总有一款适合您
  14. 安卓via浏览器settings.xml修改浏览器标识UserAgent
  15. 2022年软件设计师考试复习资料(1)
  16. 专访丁奇:阿里云即将开源AliSQL,针对秒杀优化
  17. 教程:动手用自己电脑搭建一个网站 (nat123 花生壳 动态域名 个人电脑做服务器)...
  18. 基于STM32F103移植FreeRTOS教程
  19. oracle日期导出mysql_Oracle 获取系统日期时间,导出数据库
  20. 起底中国 IT 发展 20 年!

热门文章

  1. 测试英语口语标准的软件,最客观的英语口语APP亲身测评,这3款软件让你的口语脱颖而出...
  2. pycharm下载包很慢的解决方法
  3. GB/T 8323.2塑料 烟生成 第2 部分:单室法测定烟密度试验方
  4. 2021 第二届天翼杯ctf
  5. Mac pro Virtualbox虚拟机下安装MikroTik RouterOS
  6. 【Python】抓取基金数据,这简直太爱了
  7. Windows下通过AFUWIN批量刷AMI类型主板的BIOS
  8. VIA威盛4-IN-1最新驱动 v4.55
  9. 工业相机 linux驱动软件,菲力尔FLIR-灰点Point Grey工业相机Linux Ubuntu18.04系统驱动Spinnaker-2.0.0.147-amd64/arm64...
  10. tp5的ajax搜索后分页,修改TP5的分页类使之Ajax分页有效