二进制输入输出函数fread和fwrite
一、fread和fwrite是什么?
根据数据的组织形式,数据文件被称为文本文件或者二进制文件。
数据在内存中以二进制的形式存储,如果不加转换的输出到外存,就是二进制文件
而fwrite和fread函数就是用二进制的方式将数据写入文件或者从文件中读取数据的函数
二、使用步骤
在使用之前 我们需要知道这两个函数的需要的参数和返回值是什么
fread函数的功能和定义如下
fread的功能:Reads data from a stream.
size_t fread( void *buffer, size_t size, size_t count, FILE *stream );
-
可以看出 fread的功能就是从一个文件里读取数据
使用它需要四个参数 -
void * buffer 也就是想要把读取的数据到的地方的地址 比如一个叫做a的整形变量的地址 也就是&a 又或许是一个结构体对象 假设他叫s 那便是&s
-
size_t size 这就是接收数据的变量所占空间的大小 如果他是一个int类型 那就是sizeof(int)
-
size_t count 要写入数据的个数
-
FILE*stream 这是管理文件操作的指针 一般会在开始对文件开始操作前定义 这个指针会指向我们接下来要操作的文件
fread函数的功能和定义如下
fwrite的功能:Writes data to a stream.
size_t fwrite( const void *buffer, size_t size, size_t count, FILE *stream );
- 可以看出 fwrite函数和fread函数的参数基本一致 但是fwrite函数指向的要写入的数据的指针是被const修饰的 这是为了安全考虑 防止在调用函数时改变数据的值
fwrite的返回值
Return Value
fwrite returns the number of full items actua