终止键盘输入

这篇博客探讨了C语言中如何处理文件和键盘输入。C程序通过流进行I/O操作,键盘输入由stdin流表示,可以使用与处理文件相同的方法处理。文件结尾的检测,C语言通过getchar()函数在遇到EOF(End Of File)时返回特殊值来标识,这个值通常在stdio.h中定义为-1。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、文件、流和键盘输入

1、文件是一块存储信息的存储器区域。

2、具有强大、灵活等特点的C语言具有许多用于打开、读、写和关闭文件的库函数。在一个级别上,可以使用宿主操作系统的基本文件工具来处理文件,这被称为低级I/O。C还以第二种级别处理文件,称为标准I/O包。这包括创建于处理文件的I/O函数的标准模型和标准集。

3、使用标准I/O包时,就屏蔽掉了系统差异。

4、从概念上说,C程序处理一个流而不是直接处理文件。流是一个理想化的数据流,实际输入或输出映射到这个数据流。

5、C对待输入和输出设备与其对待存储设备上的普通文件相同。键盘和显示设备作为每个C程序自动打开的文件来对待。键盘输入由一个被称为stdin 的流表示,而到屏幕上的输出由一个被称为stdout 的流表示。getchar( )、putchar( )、printf( )、scanf( )函数都是标准I/O包的成员,这些函数同这两个流打交道。

6、所有这些的一个结论是可以使用与处理文件相同的技术来处理键盘输入。


二、文件结尾

1、计算机操作系统需要某种方式来判断每个文件起始和结束的位置。检测文件结尾的一种方法是在文件中放置一个特殊字符来标志结尾。第二种方法是让操作系统存储文件大小的信息。

2、对于这两种不同的方法,C的处理方法是让getchar( )函数在到达文件结尾时返回一个特殊值,而不去管操作系统是如何检测文件结尾的。赋予该值的名称是EOF(End Of File,文件尾)。

3、通常EOF在stdio.h 文件中定义,如下所示:

#define EOF(-1)

如果您包括了stdio.h 文件并使用EOF 符号,则您就不必考虑这个数值定义。重要的是EOF代表的值表示检测到文件结尾,这个值并不是实际出现在文件中的一个符号。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值