建设企业网站电话,广告设计优秀作品,工信部网站备案网址,湖南建设工程网文件操作详解 一#xff1a;文件相关概念1#xff1a;问什么使用文件2#xff1a;什么是文件#xff1f;#xff1f;#xff1f;2.1#xff1a;程序文件2.2数据文件 二#xff1a;文件的打开和关闭1#xff1a;流的定义2#xff1a;标准流3#xff1a;文件指针 一文件相关概念1问什么使用文件2什么是文件2.1程序文件2.2数据文件 二文件的打开和关闭1流的定义2标准流3文件指针 一文件相关概念
1问什么使用文件
如果没有文件我们写的程序的数据是存储在电脑的内存中如果程序退出内存回收数据就丢失了再次运行程序的时候是看不到上次程序的数据的如果想要将程序进行持久的保存我们可以使用文件。
2什么是文件
文件是放在内存中的。 从文件的功能角度可以分为程序文件和数据文件
2.1程序文件
程序文件包括源程序文件后缀为 .c 目标文件(在VS环境下后缀为 .obj )可执行程序VS环境下后缀为.exe。
2.2数据文件
文件的内容不一定是程序而是程序运行时读写的数据比如程序运行需要读取数据中的文件或者输出内容的文件。 我们有时会把信息输出到磁盘中当需要的时候再把磁盘中的数据读取到内存中使用这里处理的就是磁盘上的文件。 根据数据在内存中的组织形式数据文件又被称为文本文件和二进制文件。 数据在内存中以二进制的形式存储如果不加转换直接输出到外存的文件中就是二进制文件如果要求在外存上以ASCII码的形式存储则需要在存储前将二进制文件转换以ASCII字符的形式存储的文件就是文本文件。 一个数据在内存中是如何存储的呢 字符一律按照ASCII形式存储数值型数据既可以用ASCII码的形式存储也可以使用二进制形式存储。 比如整数10000如果以ASCII码的形式输出到磁盘则磁盘占用5个字节一个字符占一个字节而以二进制的形式输出则在磁盘上只占4个字节。
二文件的打开和关闭
1流的定义
我们程序的数据需要输出到各种外部设备也需要从外部设备获取数据不同的外部设备的输入输出的操作可能不同为了方便程序员对各种设备进行方便的操作抽象出了流的概念。 C语言程序针对文件画面键盘等的数据的输入输出操作都是同流操作的。一般情况下我们要想向流里写数据或者从流中读取数据我们都要代开流然后进行操作。
2标准流
那我们从键盘输入数据向屏幕上输出数据怎么没有打开流呢 那是C语言程序在启动的时候默认打开了3个流 stdin:标准输入流在大多的环境下从键盘输入。 stdout:标准输出流大多情况下输出至屏幕。 stderr:标准错误流大多数情况下输出到显示器界面。 这是默认打开了这三个流我们是用scanf,printf等函数就可以直接进行输入输出操作的。 stdin,stout,stderr三个流的类型是FILE*通常称为文件指针C语言就是通过FILE*的文件指针来维护流的各种操作的。
3文件指针
每个被使用的文件都在内存中开辟了一个相应的文件信息区用来存放文件的相关信息文件的名称文件状态文件的当前位置等这些信息是保存在一个结构体变量中的该结构体类型是由系统声明的取名FILE。 每当打开一个文件的时候系统会根据文件的情况自动创建一个FILE结构的变量这样使用起来更加方便。 举例创建一个FILE的指针变量
FILE* pf//文件指针变量pf是一个指向FILE 类型数据的指针变量可以使pf指向某个文件的文件信息区是一个结构体变量。通过该文件信息区中的信息就能够访问该文件简单理解就是通过这个文件指针变量就能够间接找到与它相关联的文件。