C语言 文件(file)一般是指程序设计中的一个重要概念。所谓“文件”一般是指存储在外部介质上数据的集合。一批文件是以数据的形式存放在外部介质(如磁盘)上的。操作系统是以文件为单位对数据进行管理的,也就是说,如果想找存在外部介质上的数据,必须先按文件名找到指定的文件,然后再从该文件中读取数据。

C语言中的文件类型只有ASCII文件和二进制文件两种。ASCII码文件通常用于存放输入数据及程序的最终结果;二进制文件用于暂存程序的中间结果,供另一段程序读取。
C语言中的文件类型只有ASCII文件和二进制文件两种。
下面我们来看看ASCII码文件与二进制文件有什么区别:
二进制文件是按该数据类型在内存中的存储形式存储的;
ASCII存储方式所占空间较多且所占空间大小与数值大小有关;
ASCII码文件在外存上以ASCII码存放,而在内存中的数据都是以二进制存放,因此当进行文件读写时要进行转换,造成存取数据较慢;
二进制文件的数据是按其在内存中的存储形式在外存上存放的,不需转换,所以存取速度较快。
二进制文件不能显示出来,所以用于暂存程序的中间结果,供另一段程序读取;
(2)、二进制文件,在 C 语言编程中,使用 fopen( ) 库函数,文件的最基本读写方式为:rb(二进制读)、wb(二进制写);当然了,二进制方式也有以添加方式进行操作的。
在C语言中,文件的操作是通过FILE结构体进行了,利用fopen返回一个指向FILE结构体的指针,在使用fopen函数过程中,使用mode控制符对是否打开哪类文件进行控制:
filename:文件名,mode:打开的模式,规定了是可读、可写、追加之类的属性。
r 以只读方式打开文件,该文件必须存在。
r+ 以可读写方式打开文件,该文件必须存在。
rb+ 读写打开一个二进制文件,允许读写数据,文件必须存在。
w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。
w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。
a 以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。(EOF符保留)
a+ 以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。 (原来的EOF符不保留)