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 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题