网站建设做网站怎么做,软件排名工具,网站建设合同需要注意什么,色盲悖论欢迎关注个人主页#xff1a;逸狼 创造不易#xff0c;可以点点赞吗~ 如有错误#xff0c;欢迎指出~ 文件
为了数据持久化保存#xff0c;使用文件#xff0c;否则数据存储在内存中#xff0c;程序退出#xff0c;内存回收#xff0c;数据就会丢失。
程序设计中… 欢迎关注个人主页逸狼 创造不易可以点点赞吗~ 如有错误欢迎指出~ 文件
为了数据持久化保存使用文件否则数据存储在内存中程序退出内存回收数据就会丢失。
程序设计中文件分两种程序文件、数据文件
文件名
唯一的文件标识包含3部分文件路径文件名主干文件后缀 例c:\code\test.txt )
文本文件和二进制文件
文本文件是数据以ASCII字符的形式存储的文件
二进制文件是数据在内存中以二进制的形式存储的文件
字符⼀律以ASCII形式存储数值型数据既可以⽤ASCII形式存储也可以使⽤⼆进制形式存储。
如有整数10000如果以ASCII码的形式输出到磁盘则磁盘中占⽤5个字节每个字符⼀个字节⽽ ⼆进制形式输出则在磁盘上只占4个字节 测试代码
#includestdio.h
int main()
{int a 10000; FILE* pf fopen(test.txt, wb);fwrite(a, 4, 1, pf);//以二进制的形式写入文件fclose(pf);pf NULL;return 0;
} 流
我们程序的数据需要输出到各种外部设备也需要从外部设备获取数据不同的外部设备的输⼊输出操作各不相同为了⽅便程序员对各种设备进⾏⽅便的操作我们抽象出了流的概念我们可以把流想象成流淌着字符的河。C程序针对⽂件、画⾯、键盘等的数据输⼊输出操作都是通过流操作的。 ⼀般情况下我们要想向流⾥写数据或者从流中读取数据都是要打开流然后操作。 标准流
C语⾔程序在启动的时候默认打开了3个流
stdin 标准输⼊流在⼤多数的环境中从键盘输⼊scanf函数就是从标准输⼊流中读取数据。stdout 标准输出流⼤多数的环境中输出⾄显⽰器界⾯printf函数就是将信息输出到标准输出流中。stderr 标准错误流⼤多数环境中输出到显⽰器界⾯。
这是默认打开了这三个流我们使⽤scanf、printf等函数就可以直接进⾏输⼊输出操作的。 stdin、stdout、stderr 三个流的类型是 FILE * 通常称为⽂件指针。 C语⾔中就是通过 FILE * 的⽂件指针来维护流的各种操作的。
文件指针
每个被使⽤的⽂件都在内存中开辟了⼀个相应的⽂件信息区⽤来存放⽂件的相关信息如⽂件的名 字⽂件状态及⽂件当前的位置等。这些信息是保存在⼀个结构体变量中的。该结构体类型是由系统声明的取名FILE.不需要关注文件内部细节
每当打开⼀个⽂件的时候系统会根据⽂件的情况⾃动创建⼀个FILE结构的变量并填充其中的信 息使⽤者不必关⼼细节 文件的打开和关闭
⽂件在读写之前应该先打开⽂件在使⽤结束之后应该关闭⽂件。 在编写程序的时候在打开⽂件的同时都会返回⼀个FILE* 的指针变量指向该⽂件,建立了指针和⽂件的关系。 ANSIC规定使⽤ fopen 函数来打开⽂件 fclose 来关闭⽂件。
fopen打开文件 fclose关闭文件 代码操作
用只读形式没有创建文件 绝对路径
比如我想在桌面上创建一个文件 相对路径
. 表示当前目录. . 表示上一级路径 没写 . 表示默认当前路径