(C语言)fread与fwrite详解

2024-03-31 19:04
文章标签 语言 详解 fread fwrite

本文主要是介绍(C语言)fread与fwrite详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. fwrite函数详解

头文件:stdio.h

函数有4个参数,只适用于文件输出流

作用;将从ptr中拿count个大小为size字节的数据以二进制的方式写到文件流中。返回写入成功的数目。

演示

#include <stdio.h>
int main()
{FILE* pf = fopen("date.txt", "wb");if (pf == NULL){perror("fopen");return 1;}int arr[5] = { 1,2,3,4,5 };int count = sizeof(arr) / sizeof(arr[0]);fwrite(arr, sizeof(arr[0]), count, pf);fclose(pf);pf = NULL;return 0;
}

date.txt文件:

我们以二进制的形式写到文件中去所以显示是乱码。

一会我们可以用fread函数读取再打印出来。接着向下看。

2 fread函数详解

头文件:stdio.h

函数有四个参数,只适用于文件输入流

作用:将文件流中的count个size字节大小的数据以二进制的形式输入到ptr所指向的地址中。

返回值是成功从文件流中读取到的size字节大小的字符数目。和fwrite返回值类似。

演示:

#include <stdio.h>
int main()
{FILE* pf = fopen("date.txt", "rb");if (pf == NULL){perror("fopen");return 1;}int arr[5] = { 0 };int count = sizeof(arr) / sizeof(arr[0]);fread(arr, sizeof(arr[0]), count, pf);for (int i = 0; i < count; i++){printf("%d ", arr[i]);}fclose(pf);pf = NULL;return 0;
}

我们从文件中成功读取到了我们之前以二进制放进去放进去的1,2,3,4,5并打印出来。

当我们不知到文件中有多少个字符是可以用下面的方法将文件全部数据读取出来:

#include <stdio.h>
int main()
{FILE* pf = fopen("date.txt", "rb");if (pf == NULL){perror("fopen");return 1;}int arr[10] = { 0 };int i = 0;//每次读取一个数据,直到读到文件末尾返回值为0,结束读取while (fread(arr+i, sizeof(arr[0]), 1, pf) != 0){i++;}for (i = 0; i < 10; i++){printf("%d ", arr[i]);}return 0;
}

这样就将文件中的1,2,3,4,5读取出来放到了arr数组中去了,并打印了出来。

感谢观看,欢迎在评论区讨论。

这篇关于(C语言)fread与fwrite详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/865083

相关文章

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

Java中注解与元数据示例详解

《Java中注解与元数据示例详解》Java注解和元数据是编程中重要的概念,用于描述程序元素的属性和用途,:本文主要介绍Java中注解与元数据的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参... 目录一、引言二、元数据的概念2.1 定义2.2 作用三、Java 注解的基础3.1 注解的定义3.2 内

JavaScript中的isTrusted属性及其应用场景详解

《JavaScript中的isTrusted属性及其应用场景详解》在现代Web开发中,JavaScript是构建交互式应用的核心语言,随着前端技术的不断发展,开发者需要处理越来越多的复杂场景,例如事件... 目录引言一、问题背景二、isTrusted 属性的来源与作用1. isTrusted 的定义2. 为

使用Python实现操作mongodb详解

《使用Python实现操作mongodb详解》这篇文章主要为大家详细介绍了使用Python实现操作mongodb的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、示例二、常用指令三、遇到的问题一、示例from pymongo import MongoClientf

基于Go语言实现一个压测工具

《基于Go语言实现一个压测工具》这篇文章主要为大家详细介绍了基于Go语言实现一个简单的压测工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录整体架构通用数据处理模块Http请求响应数据处理Curl参数解析处理客户端模块Http客户端处理Grpc客户端处理Websocket客户端

一文详解Python中数据清洗与处理的常用方法

《一文详解Python中数据清洗与处理的常用方法》在数据处理与分析过程中,缺失值、重复值、异常值等问题是常见的挑战,本文总结了多种数据清洗与处理方法,文中的示例代码简洁易懂,有需要的小伙伴可以参考下... 目录缺失值处理重复值处理异常值处理数据类型转换文本清洗数据分组统计数据分箱数据标准化在数据处理与分析过

详解如何在React中执行条件渲染

《详解如何在React中执行条件渲染》在现代Web开发中,React作为一种流行的JavaScript库,为开发者提供了一种高效构建用户界面的方式,条件渲染是React中的一个关键概念,本文将深入探讨... 目录引言什么是条件渲染?基础示例使用逻辑与运算符(&&)使用条件语句列表中的条件渲染总结引言在现代

详解Vue如何使用xlsx库导出Excel文件

《详解Vue如何使用xlsx库导出Excel文件》第三方库xlsx提供了强大的功能来处理Excel文件,它可以简化导出Excel文件这个过程,本文将为大家详细介绍一下它的具体使用,需要的小伙伴可以了解... 目录1. 安装依赖2. 创建vue组件3. 解释代码在Vue.js项目中导出Excel文件,使用第三

SQL注入漏洞扫描之sqlmap详解

《SQL注入漏洞扫描之sqlmap详解》SQLMap是一款自动执行SQL注入的审计工具,支持多种SQL注入技术,包括布尔型盲注、时间型盲注、报错型注入、联合查询注入和堆叠查询注入... 目录what支持类型how---less-1为例1.检测网站是否存在sql注入漏洞的注入点2.列举可用数据库3.列举数据库

Linux之软件包管理器yum详解

《Linux之软件包管理器yum详解》文章介绍了现代类Unix操作系统中软件包管理和包存储库的工作原理,以及如何使用包管理器如yum来安装、更新和卸载软件,文章还介绍了如何配置yum源,更新系统软件包... 目录软件包yumyum语法yum常用命令yum源配置文件介绍更新yum源查看已经安装软件的方法总结软