【C语法学习】18 - fread()函数

2023-11-06 22:04
文章标签 函数 学习 语法 18 fread

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

文章目录

  • 1 函数原型
  • 2 参数
  • 3 返回值
  • 4 示例

1 函数原型

fread():从与指定流stream相关联的二进制文件中读取数据块储存在str指向的内存空间中,函数原型如下:

size_t fread(const void *ptr, size_t size, size_t count, FILE *stream)

2 参数

fwrite()函数有四个参数:

  1. 参数ptr是指向某内存空间的指针,该内存空间用于储存从文件中读取的数据块;参数ptr类型为void*型,说明ptr可以指向任何数据类型;
  2. 参数size指定了每个从文件读取的数据项的字节大小,类型为size_t(unsigned int)型;
  3. 参数count指定了从文件读取的数据项的个数,类型为size_t(unsigned int)型;
  4. 参数stream是一个指向FILE类型结构的指针;参数stream指定了fread()函数要读取的文件流,等于fopen()函数的返回值。

3 返回值

fread()函数的返回值类型为size_t(unsigned int)型:

  1. 读取文件成功,返回成功读取文件的数据项个数,返回值应等于count;
  2. 读取文件失败,返回值小于count。
1. fread returns the number of full items actually read, which may be less than count if an error occurs or if the end of the file is encountered before reaching count.

4 示例

先写文件后读文件并打印,代码如下所示:

#define SIZE 20int main()
{//int arr1[SIZE] = { 0 };int arr2[SIZE] = { 0 };int count;for (count = 0; count < SIZE; count++){arr1[count] = 2 * count;}//FILE* fp;if ((fp = fopen("1.dat", "wb")) == NULL){printf("Failed to open file.\n");exit(1);}if ((fwrite(arr1, sizeof(arr1), 1, fp)) != 1){printf("Failed to write file.\n");exit(1);}fclose(fp);//if ((fp = fopen("1.dat", "rb")) == NULL){printf("Failed to open file.\n");exit(1);}if ((fread(arr2, sizeof(arr2), 1, fp)) != 1){printf("Failed to read file.\n");exit(1);}fclose(fp);//for (count = 0; count < SIZE; count++){printf("%d\t%d\n", arr1[count], arr2[count]);}return 0;
}

代码运行结果如下图所示:

在这里插入图片描述

这篇关于【C语法学习】18 - fread()函数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

Python正则表达式语法及re模块中的常用函数详解

《Python正则表达式语法及re模块中的常用函数详解》这篇文章主要给大家介绍了关于Python正则表达式语法及re模块中常用函数的相关资料,正则表达式是一种强大的字符串处理工具,可以用于匹配、切分、... 目录概念、作用和步骤语法re模块中的常用函数总结 概念、作用和步骤概念: 本身也是一个字符串,其中

Mysql用户授权(GRANT)语法及示例解读

《Mysql用户授权(GRANT)语法及示例解读》:本文主要介绍Mysql用户授权(GRANT)语法及示例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql用户授权(GRANT)语法授予用户权限语法GRANT语句中的<权限类型>的使用WITH GRANT

HTML5表格语法格式详解

《HTML5表格语法格式详解》在HTML语法中,表格主要通过table、tr和td3个标签构成,本文通过实例代码讲解HTML5表格语法格式,感兴趣的朋友一起看看吧... 目录一、表格1.表格语法格式2.表格属性 3.例子二、不规则表格1.跨行2.跨列3.例子一、表格在html语法中,表格主要通过< tab

Java使用ANTLR4对Lua脚本语法校验详解

《Java使用ANTLR4对Lua脚本语法校验详解》ANTLR是一个强大的解析器生成器,用于读取、处理、执行或翻译结构化文本或二进制文件,下面就跟随小编一起看看Java如何使用ANTLR4对Lua脚本... 目录什么是ANTLR?第一个例子ANTLR4 的工作流程Lua脚本语法校验准备一个Lua Gramm

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字

shell编程之函数与数组的使用详解

《shell编程之函数与数组的使用详解》:本文主要介绍shell编程之函数与数组的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录shell函数函数的用法俩个数求和系统资源监控并报警函数函数变量的作用范围函数的参数递归函数shell数组获取数组的长度读取某下的

MySQL高级查询之JOIN、子查询、窗口函数实际案例

《MySQL高级查询之JOIN、子查询、窗口函数实际案例》:本文主要介绍MySQL高级查询之JOIN、子查询、窗口函数实际案例的相关资料,JOIN用于多表关联查询,子查询用于数据筛选和过滤,窗口函... 目录前言1. JOIN(连接查询)1.1 内连接(INNER JOIN)1.2 左连接(LEFT JOI

MySQL中FIND_IN_SET函数与INSTR函数用法解析

《MySQL中FIND_IN_SET函数与INSTR函数用法解析》:本文主要介绍MySQL中FIND_IN_SET函数与INSTR函数用法解析,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一... 目录一、功能定义与语法1、FIND_IN_SET函数2、INSTR函数二、本质区别对比三、实际场景案例分

Python基础语法中defaultdict的使用小结

《Python基础语法中defaultdict的使用小结》Python的defaultdict是collections模块中提供的一种特殊的字典类型,它与普通的字典(dict)有着相似的功能,本文主要... 目录示例1示例2python的defaultdict是collections模块中提供的一种特殊的字