qq_37335168 2022-05-18 10:09 采纳率: 84%
浏览 32
已结题

如何理解C 语言中fclose(char * filename)是关闭文件,清除缓冲区,释放文件占用的内存?

这里的缓冲区不是在内存里面吗?读写文件实际是向缓冲区中读写吧?释放的内存应该就是建立缓冲区时的内存吧?

  • 写回答

2条回答 默认 最新

  • 山河君 2022-05-18 11:08
    关注

    读取磁盘里的文件时,需要申请资源例如文件描述符,文件独占权限,读写权限等等的东西,而对文件进行读写的并不是直接对文件进行操作,而是先将读写的内容写入缓冲区,再由缓冲区刷新到文件中。所以在close的时候需要先清除缓冲区,再释放文件资源

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月26日
  • 已采纳回答 5月18日
  • 创建了问题 5月18日

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度