ImAoJin 2017-08-30 06:03 采纳率: 100%
浏览 1741
已采纳

C语言使用fread()函数的时候为什么不是从文档开头读取?

原函数:
图片说明
文件内容:
图片说明
运行结果:
图片说明

函数原型:
unsigned fread(void *buffer,unsigned size,unsigned count,FILE *fp);
根据我的理解是从fp指向的文件首部开始读起,再传入buffer所指向的待存入的数据块首址。
另外我试了一下,当文件中只包含一组数据的时候,还会出现乱码情况,如图:
图片说明

新人一个,求各位大神解答

  • 写回答

1条回答 默认 最新

  • Steven_eleven 2017-08-30 06:14
    关注

    fread是一个函数。从一个文件流中读数据,最多读取count个元素,每个元素size字节,如果调用成功返回实际读取到的元素个数,如果不成功或读到文件末尾返回 0。
    函数原型
    size_t fread ( void *buffer, size_t size, size_t count, FILE *stream) ;
    参 数
    buffer
    用于接收数据的内存地址
    size
    要读的每个数据项的字节数,单位是字节
    count
    要读count个数据项,每个数据项size个字节.
    stream
    输入流
    返回值
    实际读取的元素个数。如果返回值与count不相同,则可能文件结尾或发生错误。从ferror和feof获取错误信息或检测是否到达文件结尾。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题