fwrite与fread_fwrite和fprintf

fwrite与fread_fwrite和fprintffread()函数与fwrite函数

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

fread()

头文件:#include<stdio.h>
功能:是用于读取二进制数据

原型:

size_t fread(void*buffer,size_t size,size_t count,FILE*stream);
1.buffer:  是读取的数据存放的内存的指针,
        (可以是数组,也可以是新开辟的空间)
    ps:   是一个指向用于保存数据的内存位置的指针(为指向缓冲区
          保存或读取的数据或者是用于接收数据的内存地址)
2.size:   是每次读取的字节数
3.count:  是读取的次数
4.stream:  是要读取的文件的指针
      ps: 是数据读取的流(输入流)

返回值:

成功:是实际读取的元素(并非字节)数目
失败:返回0
ps:如果输入过程中遇到了文件尾或者输出过程中出现了错误,这个数字可能比请求的元素数目要小

fwrite()

功能:是用于写入二进制数据
头文件:#include<stdio.h>

原型:

size_t fwrite(void*buffer,size_ size,size_t count,FILE*stream)
1.buffer:是一个指向用于保存数据的内存位置的指针
       (是一个指针,对于fwrite来说,是要获取数据的地址)
2.size:   是每次读取的字节数
3.count:  是读取的次数
4.stream: 是数据写入的流(目标指针的文件)

返回值:

是实际写入的元素(并非字节)数目
ps:如果输入过程中遇到了文件尾或者输出过程中出现了失误,这个数字可能比请求的元素数目要小

代码:

1.fwrite每次读strlen(msg)个字节数,一次性读完(fread同理)

#include<stdio.h>
#include<string.h>
int main()
{
  const char*msg="hello fwrite/fread\n";
  fwrite(msg,strlen(msg),1,stdout);
  char buf[10]={
  
  0};
  fread(buf,strlen(msg),1,stdout);
  return 0;
}

运行结果:

这里写图片描述

2.fwrite()每次读一个字节,分strlen(msg)次读完(fread同理)

 #include<stdio.h>
 #include<string.h>
 int main()
 {
  const char*msg="hello hahaha\n";
  fwrite(msg,1,strlen(msg),stdout);
  char buf[1024]={
  
  0};
  fread(buf,1,strlen(msg),stdout);
  return 0;
}

运行结果:
这里写图片描述

ps:

fwrite的参数:(写什么内容,每次读取的字节数,读取的次数,流)
fread的参数:(该往哪里读(内存),每次读取的字节数,读取的次数,流)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197386.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • FlashFXP 注册码

    FlashFXP 注册码FlashFXP注册码——–FlashFXPRegistrationDataSTART——–FLASHFXPvACq2ssbvAAAAAC1W7cJKQTzmx77zmqJICvA7d3WnUtWNXdrp8YuERRFdIvXfOPbcpABkVix2aRTgg6afcIKFPxS72XYljdE9tgQD/2r+kmfVBngGM4Qc9p7…

    2022年7月26日
    7
  • python图像处理之scikit-image基本用法

    python图像处理之scikit-image基本用法本文介绍Python语言用于数字图像处理,那么要使用python进行各种开发和科学计算,需要对应相对的python包,python有很多的数字图像处理相关的包,像PILPillowOpenCVscikit-image等等其中PIL和Pillow只提供最基础的数字图像处理,功能有限;opencv实际上是一个c++库,只是提供了python接口,scikit-image…

    2022年10月9日
    0
  • eclipse添加git插件(eclipse git使用教程)

    想必现在搞互联网编程的人没有人没有听过编程协作工具git了吧,命令行下面操作非常方便,功能也非常的强大。但是对于java编程的人员,eclipse肯定是他们编程的神器(肯定是首选),那么如何在eclipse里面使用git了?今天就来念叨念叨这事。

    2022年4月10日
    76
  • 5gwifi信道哪个最好,wifi信道在哪里设置如何检测哪个路由器信道最快

    5gwifi信道哪个最好,wifi信道在哪里设置如何检测哪个路由器信道最快5G的WIFI信道选择相当重要,在不同的国家为了保证政府与军用部分与5G相交频道的使用,通过网卡驱动锁定或路由器固件锁定了5G的WIFI信道使用权限,而这些被锁定的频道,使用性能都是相对好,受到自然或非自然因素干扰最少的;而突破这些限制,才能发挥5G的WIFI真正性能。  双频路由器5ghz设置哪个信道最好  1、国内规定可用的5G信道只有149、153、157、161、165这5个(…

    2022年5月2日
    4.7K
  • unboundlocalerror python_Python问题:UnboundLocalError: local variable ‘xxx’ referenced before assignme…「建议收藏」

    unboundlocalerror python_Python问题:UnboundLocalError: local variable ‘xxx’ referenced before assignme…「建议收藏」参考链接:【解析】UnboundLocalError:localvariable’xxx’referencedbeforeassignment在函数外部已经定义了变量n,在函数内部对该变量进行运算,运行时会遇到了这样的错误:主要是因为没有让解释器清楚变量是全局变量还是局部变量。【案例】如下代码片所示:deftest():ifvalue==1:a+=1returnavalue=…

    2022年6月24日
    22
  • EL与JSTL注意事项汇总

    EL与JSTL注意事项汇总

    2022年1月3日
    45

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号