news 2026/5/21 21:42:39

C语言文件操作入门,零基础轻松学会

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C语言文件操作入门,零基础轻松学会

前言

我们平时写的C语言代码,数据都存放在内存中,程序运行结束后数据就会消失。如果想要永久保存数据,就需要使用文件操作

一、什么是文件

文件是存储在电脑硬盘上的数据集合。在C语言中,文件主要分为两种:

  • 文本文件:后缀为txt等,文字可见、通俗易懂。

  • 二进制文件:机器编码存储,肉眼无法直接看懂。

二、文件操作基础流程

C语言文件操作固定四步:定义文件指针、打开文件、读写文件、关闭文件。所有文件操作都需要引入头文件#include <stdio.h>

1、文件指针

文件指针是操作文件的关键,基础写法:FILE* fp;

2、打开方式

使用fopen()函数打开文件,常用方式:

  • r:只读模式,读取已有文件。

  • w:写入模式,清空原有内容重新写入。

  • a:追加模式,在文件末尾添加内容。

3、关闭文件

文件使用完毕必须用fclose()关闭,并把指针置为空值NULL。防止数据丢失、占用系统资源。

三、常用文件读写函数

C语言文件读写分为顺序读写与随机读写,以下为初学者必备函数,标注标准格式与最简示例。

3.1 顺序读写函数

顺序读写按照文件内容从头到尾的顺序读取、写入数据。

  • 字符读取 fgetc标准语法:int fgetc(FILE* fp);简单示例:char ch = fgetc(fp);

  • 字符写入 fputc标准语法:int fputc(char ch, FILE* fp);简单示例:fputc('M', fp);

  • 字符串读取 fgets标准语法:char* fgets(char* buf, int n, FILE* fp);简单示例:fgets(str, 50, fp);

  • 字符串写入 fputs标准语法:int fputs(const char* str, FILE* fp);简单示例:fputs("你好C语言", fp);

  • 格式化写入 fprintf标准语法:int fprintf(FILE* fp, const char* format, ...);简单示例:fprintf(fp,"%d",100);

  • 格式化读取 fscanf标准语法:int fscanf(FILE* fp, const char* format, ...);简单示例:fscanf(fp,"%d",&num);

3.2 随机读写函数

随机读写可以人为移动文件指针,跳过部分数据,在任意位置进行读写。

  • 移动指针 fseek标准语法:int fseek(FILE* fp, long offset, int origin);简单示例:fseek(fp, 5, SEEK_SET);

  • 获取指针位置 ftell标准语法:long ftell(FILE* fp);简单示例:long len = ftell(fp);

  • 指针重置 rewind标准语法:void rewind(FILE* fp);简单示例:rewind(fp);

四、新手注意事项

  1. 打开文件必须判断指针是否为空,避免打开失败导致程序报错。

  2. 写入模式w会清空原有数据,修改文件优先使用追加模式a

  3. 文件使用结束务必关闭文件,养成良好编码习惯。

总结

文件操作是C语言实用知识点,核心记住操作流程、三种打开模式,熟练掌握读写代码即可完成基础数据保存。学好文件操作,我们可以编写记事本、学生管理等简易程序,提升代码实操能力。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/21 21:41:03

观察使用Taotoken聚合API后每月账单的清晰度与可追溯性

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 观察使用Taotoken聚合API后每月账单的清晰度与可追溯性 对于将大模型能力集成到业务流程中的团队而言&#xff0c;API调用成本的管…

作者头像 李华
网站建设 2026/5/21 21:39:11

DellFanManagement:掌握戴尔笔记本风扇控制的完整指南

DellFanManagement&#xff1a;掌握戴尔笔记本风扇控制的完整指南 【免费下载链接】DellFanManagement A suite of tools for managing the fans in many Dell laptops. 项目地址: https://gitcode.com/gh_mirrors/de/DellFanManagement 你是否厌倦了戴尔笔记本在游戏时…

作者头像 李华
网站建设 2026/5/21 21:38:18

GPT-3.5和GPT-4写Prompt,差别到底在哪?

先说结论GPT-3.5需要精准、步骤化的指令&#xff0c;否则容易偏离&#xff1b;GPT-4能理解模糊目标并主动补全。上下文长度差异巨大&#xff1a;GPT-4支持128K tokens&#xff0c;可以处理整份文档&#xff1b;GPT-3.5只有4K或16K。复杂任务中&#xff0c;GPT-4能自动拆解逻辑&…

作者头像 李华
网站建设 2026/5/21 21:37:10

视觉驱动跨平台UI自动化框架:Midscene.js的技术架构与实现原理

视觉驱动跨平台UI自动化框架&#xff1a;Midscene.js的技术架构与实现原理 【免费下载链接】midscene AI-powered, vision-driven UI automation for every platform. 项目地址: https://gitcode.com/GitHub_Trending/mid/midscene Midscene.js是一个基于视觉语言模型的…

作者头像 李华
网站建设 2026/5/21 21:34:38

Java 程序员第 25 阶段:CompletableFuture 异步调用,大模型接口并发编排

引言 在现代Java后端开发中&#xff0c;异步编程已成为处理高并发、大量IO操作的核心手段。随着大模型&#xff08;L LM&#xff09;接口的广泛应用&#xff0c;后端服务需要同时调用多个AI供应商的API来获取响应、比较结果或实现降级方案。CompletableFuture作为Java 8引入的…

作者头像 李华