admin 管理员组

文章数量: 1086019


2023年12月18日发(作者:line韩国)

fread和fwrite的用法

fread和fwrite是C/C++库中常用的文件读写函数,它们分别是从文件中读取数据以及将数据写入文件的函数。fread和fwrite函数的功能是向文件中写入或者从文件中读取指定的字节数。

fread函数的调用格式是:

size_t fread( void *ptr, size_t size, size_t nmemb, FILE

*stream );

其中ptr是指向一个大小为size的内存空间的指针,用来存储读取出来的数据;size是每个元素的大小,可以是char、short、int或者float等;nmemb是指定要读取元素的个数;stream是处于打开状态的文件指针,利用fopen函数来打开文件;fread函数返回值是实际读取元素的个数,当其值小于nmemb时表明读取到文件末尾了。

fwrite函数的调用格式是:

size_t fwrite( const void *ptr, size_t size, size_t nmemb,

FILE *stream );

其中ptr是指向内存空间的指针,指向的内存空间中存有要写入的数据;size是每个元素的大小;nmemb是指定要写入元素的个数;stream是处于打开状态的文件指针。fwrite函数返回值也是实际写入元素的个数,当其值小于nmemb时表明写入到了文件末尾。

接下来,我们将举例说明如何使用fread和fwrite函数。首先,我们创建一个文件名为的文本文件,内容为“123456789”,这将是我们操作的文件。

- 1 -

接着,我们使用fopen函数来打开文件:

FILE *fp = fopen( rb+

其中,fp是指向文件的指针,“rb+”表示以可读可写的方式打开文件,如果文件不存在,则会尝试创建文件。

接着,我们使用fread函数来读取文件中的数据:

char buffer[10];

fread(buffer, 1, 10, fp);

其中,buffer是存储读取数据的内存空间,1表示每个元素的大小为1字节,10表示读取10个元素。

这时,buffer中就会存储“123456789”,也就是文件中的内容。

接着,我们使用fwrite函数来写入文件:

char content[20] = 987654321

fwrite(content, 1, 10, fp);

其中,content中存储的是要写入文件的数据,1表示每个元素的大小为1字节,10表示写入10个元素。

此时,文件中的内容就变为“987654321”。

最后,我们使用fclose函数来关闭文件:

fclose(fp);

以上就是fread和fwrite的用法,这些函数能够帮助我们更加方便地读写文件,非常有用。

记住用fread读取文件,用fwrite写入文件,今后编写C/C++ - 2 -

程序时就不会忘记这两个函数的用法和作用了!

- 3 -


本文标签: 文件 函数 写入 读取 打开