关于C/C++里FILE的fwrite和fread怎么用。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于C/C++里FILE的fwrite和fread怎么用。相关的知识,希望对你有一定的参考价值。

参考技术A fseek找到读写的位置
fread从流中读指定_个数的字符,原型是size_t
fread(void
ptr,
size_t
size,
size_t
n,
FILE
*stream);参数ptr是保存读取的数据,void的指针可用任何类型的指针来替换,如char*、int
等等来替换;size是每块的字节数;n是读取的块数,如果成功,返回实际读取的块数(不是字节数),本函数一般用于二进制模式打开的文件中_
fwrite
与fread对应,向流中写指定的数据,原型是size_t
fwrite(const
void
*ptr,
size_t
size,
size_t
n,
FILE
*stream);参数ptr是要写入的数据指针,void的指针可用任何类型的指针来替换,如char*、int
*等等来替换;size是每块的字节数;n是要写的块数,如果成功,返回实际写入的块数(不是字节数),本函数一般用于二进制模式打开的文件中**

C 库函数 – fwrite()

[

C 库函数 - fwrite()
C 标准库 - <stdio.h>

描述

C 库函数 size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream) 把 ptr 所指向的数组中的数据写入到给定流 stream 中。

声明

下面是 fwrite() 函数的声明。


size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream)

参数

ptr -- 这是指向要被写入的元素数组的指针。
size -- 这是要被写入的每个元素的大小,以字节为单位。
nmemb -- 这是元素的个数,每个元素的大小为 size 字节。
stream -- 这是指向 FILE 对象的指针,该 FILE 对象指定了一个输出流。

返回值

如果成功,该函数返回一个 size_t 对象,表示元素的总数,该对象是一个整型数据类型。如果该数字与 nmemb 参数不同,则会显示一个错误。

实例

下面的实例演示了 fwrite() 函数的用法。

实例

#include<stdio.h>
int main ()
{
FILE *fp;
   char str[] = "This is runoob.com";
 
   fp = fopen( "file.txt" , "w" );
   fwrite(str, sizeof(str) , 1, fp );
 
   fclose(fp);
  
   return(0);
}

让我们编译并运行上面的程序,这将创建一个文件 file.txt,它的内容如下:


This is runoob.com

现在让我们使用下面的程序查看上面文件的内容:

实例

#include <stdio.h>
int main ()
{
FILE *fp;
   int c;
 
   fp = fopen("file.txt","r");
   while(1)
{
c = fgetc(fp);
      if( feof(fp) )
{
break ;
      }
printf("%c", c);
   }
fclose(fp);
   return(0);
}

C 标准库 - <stdio.h>

]
转载请保留页面地址:https://www.breakyizhan.com/c-3/19425.html

以上是关于关于C/C++里FILE的fwrite和fread怎么用。的主要内容,如果未能解决你的问题,请参考以下文章

C 库函数 – fwrite()

求大神帮忙看看c语言编程哪里出问题了,文件始终是空白,无法写入。

Matlab 中fread的问题

关于c++/c

c语言文件操作fwrite和fread

C语言 fwrite函数