C及C++程序设计 第十三章 磁盘文件操作(IO系统)
时间:2025-07-04
时间:2025-07-04
C及C++程序设计
人民邮电出版社
第十三章 磁盘文件操作 (I/O系统)
C及C++程序设计
人民邮电出版社
13.1 文件概述 13.2 控制台I/O 控制台 13.3 ANSI 文件 系统 文件I/O系统
C及C++程序设计
人民邮电出版社
13.1 文件概述13.1.1 C文件的概念 文件的概念 文件(file)是计算机技术中的一个重要概念。文 是计算机技术中的一个重要概念。 文件 是计算机技术中的一个重要概念 件一词我们多次使用。 件一词我们多次使用。 从操作系统的角度, 从操作系统的角度,与主机相连的输入输出设 也看做是文件。 备,也看做是文件。
C及C++程序设计
人民邮电出版社
13.1.2 流的概念 ANSI C的文件系统适用于多种设备,如终端、磁 的文件系统适用于多种设备, 的文件系统适用于多种设备 如终端、 盘和磁带等设备。 盘和磁带等设备。 根据文件存储形式的不同,有两种类型的流: 根据文件存储形式的不同,有两种类型的流:文 本流和二进制流。 本流和二进制流。 1. 文本流 文本流是一个ASCII码字符序列。 文本流是一个ASCII码字符序列。根据具体环境的 ASCII码字符序列 需要,可能会有一定的字符要进行转换。 需要,可能会有一定的字符要进行转换。 2. 二进制流 二进制流是一组字节序列。 二进制流是一组字节序列。它与设备之间传递的 数据存在一一对应的关系,即没有任何字符的转换。 数据存在一一对应的关系,即没有任何字符的转换。
C及C++程序设计
人民邮电出版社
13.1.3 缓冲文件系统和非缓冲文件系统 C语言支持两种文件系统:缓冲文件系统和非 语言支持两种文件系统: 语言支持两种文件系统 缓冲文件系统。 缓冲文件系统。 所谓缓冲文件系统(buffered file system) 是指 所谓缓冲文件系统 在进行I/O操作时 操作时, 在进行 操作时,系统自动为每个打开的文件开 辟一个内存缓冲区。 辟一个内存缓冲区。 所谓非缓冲文件系统(unbuffered file system) 所谓非缓冲文件系统 是指系统不自动开辟内存缓冲区, 是指系统不自动开辟内存缓冲区,而是由程序自 己为每个文件设定缓冲区。 己为每个文件设定缓冲区。
C及C++程序设计
人民邮电出版社
13.2 控制台 控制台I/O13.2.1 简单的控制台 函数 简单的控制台I/O函数 1. 读写字符 表中读写字符的四个函数的原型如下: 表中读写字符的四个函数的原型如下: int getche(void); int puthar(int); int getchar(void); int getch(void); 函数getchar()是函数 是函数getche()的一个变体。由于 的一个变体。 函数 是函数 的一个变体 它要求输入回车, 它要求输入回车,就有可能在函数返回之后留下字 符在输入流中。 符在输入流中。
C及C++程序设计
人民邮电出版社
2. 读写字符串 用于控制台读写字符串的函数为gets()和puts()。 用于控制台读写字符串的函数为 和 。
它们的原型如下: 它们的原型如下: char *gets(char *); int puts(char *); 并且都在头文件stdio.h中说明。 中说明。 并且都在头文件 中说明 gets()函数从键盘读入一个字符串,放到指针参数 函数从键盘读入一个字符串, 函数从键盘读入一个字符串 指定的地址中。 指定的地址中。 puts()函数的功能是在屏幕上显示一字符串,后跟 函数的功能是在屏幕上显示一字符串, 函数的功能是在屏幕上显示一字符串 一个新行符。 一个新行符。
C及C++程序设计
人民邮电出版社
13.2.2 格式化的控制台 格式化的控制台I/O 除了前面所介绍的简单控制台I/O函数以外,C 除了前面所介绍的简单控制台 函数以外,C 函数以外 标准函数库中还有两个格式化输入输出函数: 标准函数库中还有两个格式化输入输出函数: printf()和scanf()。 printf()和scanf()。
C及C++程序设计
人民邮电出版社
13.2.3 标准设备文件及 改向 标准设备文件及I/O改向 当进行输入输出操作时,一般输入设备为键盘, 当进行输入输出操作时,一般输入设备为键盘, 输出设备为显示器。这是系统规定的, 输出设备为显示器。这是系统规定的,称这些设备为 标准设备。 标准设备。 标准设备文件的改向操作, 标准设备文件的改向操作,是在执行用户程序文 件时,用改向操作符实现的。有两个改向操作符, 件时,用改向操作符实现的。有两个改向操作符,它 们是: 们是: < 标准输入文件改向; 标准输入文件改向; > 标准输出文件改向。 标准输出文件改向。
C及C++程序设计
人民邮电出版社
13.3 ANSI 文件 系统 文件I/O系统ANSI 文件 文件I/O 系统,也称为缓冲文件输入输 系统, 出系统。它由一些相互关联的函数组成。 出系统。它由一些相互关联的函数组成。
C及C++程序设计
人民邮电出版社
13.3.1 文件结构类型和文件指针 首先引入一个新的数据类型, 首先引入一个新的数据类型,即文件结构 类型。 类型。 文件I/O系统中 系统中, 在ANSI 文件 系统中,每个被使用的文 都在内存开辟一个区, 件,都在内存开辟一个区,用于存放文件的相 关信息,如文件名、文件状态、 关信息,如文件名、文件状态、文件缓冲区位 置以及当前的读写位置等。 置以及当前的读写位置等。 指向FILE结构的指针称为文件指针。文件 结构的指针称 …… 此处隐藏:1601字,全部文档内容请下载后查看。喜欢就下载吧 ……
下一篇:风光摄影构图基本原则