当前位置: 首页 > ds >正文

C语言-文件

一、文件的打开

文件分类:程序文件和数据文件

文件名:文件路径 + 文件名主干 + 后缀名

1、文件指针

每个被使用文件都在内存中开辟了一个相应的文件信息区,用来存放文件的相关信息(文件名、路径、大小位置等)。这些信息保存在一个结构体变量中,该结构体是有系统声明的,取名FILE

//stdio.h
typedef struct _iobuf
{char*  _ptr;        //文件输入的下一个位置int    _cnt;        //当前缓冲区的相对位置char*  _base;       //文件初始位置int    _flag;       //文件标志int    _file;       //文件有效性int    _charbuf;    //缓冲区是否可读取int    _bufsiz;     //缓冲区字节数char*  _tmpfname;   //临时文件名
} FILE;

2、文件打开与关闭

①、fopen:打开文件

FILE* fopen(const char* filename,const char* mode);
//filename : 文件名
//mode: 文件的打开形式:'r','w','a':追加
//打开失败,返回NULL

②、fclose:关闭文件

int fclose ( FILE * stream );

二、文件的读写

1、文件的顺序读写

2、文件的随机读写

①、fseek:读取文件指定位置的数据

int fseek(FILE* stream,long int offset, int origin);
//stream:流
//offset:偏移
//origin:起始地址,origin取值:SEEK_SET,起始位置,SEEK_CUR,当前位置,SEEK_END,末尾位置

②、ftell:计算当前文件指针距离起始位置的偏移量

int ftell(FILE* stream);

③、rewind:回到文件的起始位置

void rewind(FILE* stream);

三、二进制文件与文本文件

四、文件读取结束的判定

1、feof:判定文件读取结束失败的原因:是文件读取失败结束还是文件读取失败结束

fgetc:EOF,文件读取结束

fgets:NULL,文件读取结束

fread:返回值是否小于实际要读的个数,文件读取结束

五、文件缓冲区

http://www.xdnf.cn/news/9352.html

相关文章:

  • IEEE Journal on Selected Areas in Communications 2025年论文整理2(中英文摘要)
  • IPv4地址的主要配置项介绍
  • 14. LayUI与Bootstrap框架使用
  • JS手写代码篇---手写promise.all
  • Python条件语句完全指南:从if-else到模式匹配
  • 鸿蒙OSUniApp 实现带搜索功能的下拉菜单#三方框架 #Uniapp
  • 实验设计与分析(第6版,Montgomery)第3章单因子实验:方差分析3.11思考题3.1 R语言解题
  • PIO 也有并发喔,巧用SIDE-SET
  • 解决Qt 打包的软件缺少dll问题
  • 《计算机组成原理》第 4 章 - 存储器​
  • 零基础设计模式——结构型模式 - 装饰器模式
  • 国芯思辰| 同步降压转换器CN2020应用于智能电视,替换LMR33620
  • 在ubuntu手动分区时,730GB的总空间,建议划分多少给根目录
  • AI应用 Markdown 渲染对比与原生实现方案
  • 书籍品读:《逆水行舟话幸福》(陈州)
  • 【Python】2. 基础语法(2)
  • 【运维_日常报错解决方案_docker系列】一、docker系统不起来
  • 从自动化到智能化:制造业数字化转型的五个关键跃迁
  • Vue-03 (调试工具Vue Devtools )
  • delphi xe 12.3下解决错误 ld.exe: unrecognized option ‘--no-rosegment‘
  • 试验台铁地板:技术创新与品质保障
  • 【观成科技】Ymir勒索软件组织窃密木马RustyStealer加密通信分析
  • STM32的HAL编码流程总结(上部)
  • 大模型——MCP 深度解析
  • vue2使用element中多选组件el-checkbox-group,数据与UI更新不同步
  • 【React】jsx 从声明式语法变成命令式语法
  • 5G NTN卫星通信发展现状(截止2025年3月)
  • 每日算法-250527
  • SNTP 协议详解:网络时间同步的轻量级解决方案
  • Python os 模块简介及基础使用示例