前言:
什么是文件:存在磁盘上的文件被叫做计算机的文件
在程序设计中,我们一般谈的有两种文件:程序文件、数据文件
①程序文件:包括源程序文件(.c) 目标文件(.obj)
可秩序程序(.exe)
②数据文件:文件的内容是程序运行时读写的数据,比如程序运行需要从中读取数据的文件,或者输出内容的文件
以前我们讨论的都是从终端为对象的,即从终端的键盘输入数据,运行结果显示到显示器上。
③文件名:
文件路径+文件名主干+文件后缀
例如 C:\code\test.txt
一.文件类型
1.文本文件
根据数据的组织形式,我们用记事本打开可以看懂的文件叫做文本文件
数据输出在外存里面的时候利用ASCLL码字符形式的文件被称为文本文件
2.二进制文件
根据数据的组织类型,我们用记事本打开看不懂,是一堆乱码的文件
数据在内存中以二进制的形式存储,如果不加转换直接输出到外存,就是二进制文件
虽然是一个二进制文件,但是当文件打开的时候显示的是十六进制
fopen第二个参数wb是以二进制形式书写
fwrite是写,第一个参数是要写的东西,第二个参数是要写元素的大小(这里为4个字节),第三个是写几次写几个,第四个是写完后放到哪个文件中
二.文件缓冲区
1.文件缓冲区的概念:
三.文件指针
1.缓冲文件系统中,关键的概念是“文件类型指针”,简称“文件指针”
每个被使用的文件都在内存中开辟了一个相应的文件信息区,用来存放文件的相关信息
ps:文件信息区其实是一个结构体变量,可以标识一个文件,该结构体类型是系统定义的,定义为FILE
在库中,FILE的定义为:
2.每当打开一个文件的时候,系统会根据文件的情况自动创建一个FILE结构的变量
3.文件的打开和关闭
文件在读写之前应该打开文件,读写结束后应该关闭文件
打开方式:
4.文件的写入:fputc函数(int c , FIFE*)
下面是一个完整的写入程序:
标准流:
所以我们可以利用键盘进行输入和输出