【C语言】文件操作(续)

news2025/5/9 13:37:31

 目录

复习:

一·⽂件的顺序读写

例子:


前言:

在上篇文章中介绍了文件的类型,文件指针,流,操作的函数。

在本篇文章继续为大家带来文件细节分享,如 顺序读写等等。

复习:

fopen是C语言中用于打开文件的函数。 

FILE *fopen(const char *filename, const char *mode);

常用打开模式:

模式描述
"r"只读方式打开文本文件
"w"只写方式创建/覆盖文本文件
"a"追加方式打开/创建文本文件
"rb"只读方式打开二进制文件
"wb"只写方式创建/覆盖二进制文件
"ab"追加方式打开/创建二进制文件
"r+"读写方式打开文本文件
"w+"读写方式创建/覆盖文本文件
"a+"读写方式打开/创建文本文件

fclose是C语言中用于关闭文件的函数。

int fclose(FILE *stream);

 例子:

#include <stdio.h>
int main()
{
	FILE* pf=fopen("Project179", "r");
	if (pf = NULL)
	{
		perror("shibai ");

		return 1;
	}
	else
	{
		printf("打开陈工");
	}
	return 0;
}

一·⽂件的顺序读写

文件的顺序读写是指按照文件中数据的顺序逐个读取或写入数据。

顺序读写函数介绍:

函数名

功能

适⽤于

fgetc

字符输⼊函数

所有输⼊流

fputc

字符输出函数

所有输出流

fgets

⽂本⾏输⼊函数

所有输⼊流

fputs

⽂本⾏输出函数

所有输出流

fscanf

格式化输⼊函数

所有输⼊流

fprintf

格式化输出函数

所有输出流

fread

⼆进制输⼊

⽂件

fwrite

⼆进制输出

⽂件

如何更好的记忆呢?

以fgetc为例子:

f指file     个体表示获取  c指的是字符 character  所以fgetc是从文件读取一个字符

 上⾯说的适⽤于所有输⼊流⼀般指适⽤于标准输⼊流和其他输⼊流(如⽂件输⼊流);

所有输出流⼀般指适⽤于标准输出流和其他输出流(如⽂件输出流)。

 这里可以看出fputc如何使用的了,前一个参数是要输入的字符,后一个参数是地址 。

大家可以去C语言官网去搜索对应的函数。

如何使用:

#include <stdio.h>
int main()
{
	FILE* pf = fopen("dest.c", "w");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	fputc('a',pf);
	fclose(pf);
	pf = NULL;
	return 0; 

}

改善:

这里还可以使用for循环的方法,输入字符,如下:

#include <stdio.h>
int main()
{
	FILE* pf = fopen("dest.c1", "w");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	//fputc('a',pf);
	for (int i = 'a';i <= 'z';i++)
	{
		fputc(i, pf);
	}
	fclose(pf);
	pf = NULL;
	return 0; 

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2371503.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于CBOW模型的词向量训练实战:从原理到PyTorch实现

基于CBOW模型的词向量训练实战&#xff1a;从原理到PyTorch实现 在自然语言处理&#xff08;NLP&#xff09;领域&#xff0c;词向量是将单词映射为计算机可处理的数值向量的重要方式。通过词向量&#xff0c;单词之间的语义关系能够以数学形式表达&#xff0c;为后续的文本分…

mac连接lniux服务器教学笔记

从你的检查结果看&#xff0c;容器内已经安装了 XFCE 桌面环境&#xff08;xfce.desktop 和 xubuntu.desktop 的存在说明桌面环境已存在&#xff09;。以下是针对 Docker 容器环境的远程桌面配置方案&#xff1a; 一、容器内快速配置远程桌面&#xff08;XFCE VNC&#xff09;…

阀门产业发展方向报告(石油化工阀门应用技术交流大会)

本文大部分内容来自中国通用机械工业协会副会长张宗列在“2024全国石油化工阀门应用技术交流大会”上发表的报告。 一、国外阀门产业发展 从全球阀门市场分布看&#xff0c;亚洲是最大的工业阀门市场&#xff0c;美洲是全球第二大工业阀门市场&#xff0c;欧洲位列第三。 从国…

Windows Server 2025 安装AMD显卡驱动

运行显卡驱动安装程序&#xff0c;会提示出问题。但是此时资源已经解压 来到驱动路径 C:\AMD\AMD-Software-Installer\Packages\Drivers\Display\WT6A_INF 打开配置文件&#xff0c;把这两行替换掉 %ATI% ATI.Mfg, NTamd64.10.0...16299, NTamd64.10.0, NTamd64.6.0, NTamd64.…

用 CodyBuddy 帮我写自动化运维脚本

我正在参加CodeBuddy「首席试玩官」内容创作大赛&#xff0c;本文所使用的 CodeBuddy 免费下载链接&#xff1a;腾讯云代码助手 CodeBuddy - AI 时代的智能编程伙伴”。 #CodeBuddy首席试玩官 背景 我个人是非常喜欢 Jenkins 自动化部署工具的&#xff0c;之前都是手写 Jenki…

USB集线器芯片革新之战:CH334U如何以工业级性能重新定义HUB控制器

一、当工业智能化遭遇接口瓶颈 在智能制造与边缘计算蓬勃发展的今天&#xff0c;工程师们正面临一个看似微小却至关重要的挑战——如何让USB集线器在极端工况下保持稳定&#xff1f;传统HUB控制器在-20℃以下频繁出现信号失真&#xff0c;产线突然断电导致的静电击穿更是让设备…

基于 Spring Boot 瑞吉外卖系统开发(十)

基于 Spring Boot 瑞吉外卖系统开发&#xff08;十&#xff09; 修改菜品 修改菜品是在原有的菜品信息的上对菜品信息进行更新&#xff0c;对此修改菜品信息之前需要将原有的菜品信息在修改界面进行展示&#xff0c;然后再对菜品信息进行修改。 修改菜品分为回显菜品信息和更…

C++ 与 Lua 联合编程

在软件开发的广阔天地里&#xff0c;不同编程语言各有所长。C 以其卓越的性能、强大的功能和对硬件的直接操控能力&#xff0c;在系统开发、游戏引擎、服务器等底层领域占据重要地位&#xff0c;但c编写的程序需要编译&#xff0c;这往往是一个耗时操作&#xff0c;特别对于大型…

Linux系统(OpenEuler22.03-LTS)部署FastGPT

在 openEuler 22.03 LTS 系统上通过 Docker Compose 安装 FastGPT 的步骤如下&#xff1a; 官方参考文档&#xff1a;https://doc.fastgpt.cn/docs/development/docker/ 1. 安装 Docker 和 Docker Compose 可以参考我之前离线安装Docker的文章&#xff1a;openEuler 22.03 LT…

Kubernetes控制平面组件:Controller Manager 之 内置Controller详解

云原生学习路线导航页&#xff08;持续更新中&#xff09; kubernetes学习系列快捷链接 Kubernetes架构原则和对象设计&#xff08;一&#xff09;Kubernetes架构原则和对象设计&#xff08;二&#xff09;Kubernetes架构原则和对象设计&#xff08;三&#xff09;Kubernetes控…

结合Splash与Scrapy:高效爬取动态JavaScript网站

在当今的Web开发中&#xff0c;JavaScript的广泛应用使得许多网站的内容无法通过传统的请求-响应模式直接获取。为了解决这个问题&#xff0c;Scrapy开发者经常需要集成像Splash这样的JavaScript渲染引擎。本文将详细介绍Splash JS引擎的工作原理&#xff0c;并探讨如何将其与S…

用于构建安全AI代理的开源防护系统

大家读完觉得有帮助记得及时关注&#xff01;&#xff01;&#xff01; 大型语言模型&#xff08;LLMs&#xff09;已经从简单的聊天机器人演变为能够执行复杂任务的自主代理&#xff0c;例如编辑生产代码、编排工作流程以及基于不受信任的输入&#xff08;如网页和电子邮件&am…

克里金模型+多目标优化+多属性决策!Kriging+NSGAII+熵权TOPSIS!

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 克里金模型多目标优化多属性决策&#xff01;KrigingNSGAII熵权TOPSIS&#xff01;&#xff01;matlab2023b语言运行&#xff01; 1.克里金模型&#xff08;Kriging Model&#xff09;是一种基于空间统计学的插值方法…

LLM 论文精读(三)Demystifying Long Chain-of-Thought Reasoning in LLMs

这是一篇2025年发表在arxiv中的LLM领域论文&#xff0c;主要描述了长思维链 Long Chain-of-Thought 对LLM的影响&#xff0c;以及其可能的生成机制。通过大量的消融实验证明了以下几点&#xff1a; 与shot CoT 相比&#xff0c;long CoT 的 SFT 可以扩展到更高的性能上限&…

【Prompt工程—文生图】案例大全

目录 一、人物绘图 二、卡通头像 三、风景图 四、logo设计图 五、动物形象图 六、室内设计图 七、动漫风格 八、二次元图 九、日常场景图 十、古风神化图 十一、游戏场景图 十二、电影大片质感 本文主要介绍了12种不同类型的文生图技巧&#xff0c;通过加入不同的图像…

rust程序静态编译的两种方法总结

1. 概述 经过我的探索&#xff0c;总结了两种rust程序静态编译的方法,理论上两种方法都适用于windows、mac os和linux(mac os未验证)&#xff0c;实测方法一性能比方法二好&#xff0c;现总结如下&#xff0c;希望能够帮到你. 2.方法一 2.1 添加配置文件 在项目的同级文件夹下新…

【Linux系列】目录大小查看

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

2048游戏(含Python源码)

前言 相关参考游戏&#xff1a; 像素飞机大战&#xff08;含Python源码&#xff09;-CSDN博客https://blog.csdn.net/weixin_64066303/article/details/147693018?spm1001.2014.3001.5501使用DeepSeek定制Python小游戏——以“俄罗斯方块”为例-CSDN博客https://blog.csdn.n…

中间件-RocketMQ

RocketMQ 基本架构消息模型消费者消费消息模式顺序消息机制延迟消息批量消息事务消息消息重试最佳实践 基本架构 nameServer: 维护broker列表信息&#xff0c;客户端连接时只需要连接nameServer。可配置成集群。 broker&#xff1a;broker分为master和slave&#xff0c;master负…

Python就业方向有哪些?

Python 作为一门通用、易学且功能强大的编程语言&#xff0c;在多个领域都有广泛的应用&#xff0c;因此就业方向也非常多样化。以下是 Python 主要的就业方向及相关技能要求。 1. Web 开发 岗位&#xff1a;Python Web 开发工程师、后端工程师、全栈工程师技术栈&#xff1a…