免费在线观看韩国电视剧网站推荐/山西seo排名厂家

免费在线观看韩国电视剧网站推荐,山西seo排名厂家,网站无法上传照片,中文游戏制作软件目录 1.fopen 打开文件 1.1 只读打开文件,并且文件不存在 1.2 只写打开文件,并且文件不存在 1.3 只写打开文件,并且文件存在,且有内容 1.4 追加只写打开文件,并且文件不存在 2. fclose 关闭文件 3. fgetc 读取一…

目录

 1.fopen 打开文件

1.1 只读打开文件,并且文件不存在

1.2 只写打开文件,并且文件不存在

1.3 只写打开文件,并且文件存在,且有内容

1.4 追加只写打开文件,并且文件不存在

2. fclose 关闭文件

3. fgetc 读取一个字符

4.fputc 写入一个字符

5.fgets 从文件中读取一行字符串

(1)读取的字节数小于文件一行内容,提前结束读取

(2)读取的字节数小于文件一行内容,提前结束读取

6.fputs 向文件写入一个字符串


 1.fopen 打开文件

函数原型:

/* 功能:创建或者打开一个文件
参数:
path:文件名,如果只写文件名,默认就是当前路径,也可以添加路径
mode:文件权限
r 只读打开:如果文件不存在则报错,文件存在只读打开
r+ 读写打开,如果文件不存在则报错,文件存在读写打开
w 只写打开,如果文件不存在则创建;如果文件存在则清空,只写打开;
w+ 读写打开,如果文件不存在则创建;如果文件存在则清空,读写打开
a 追加只写打开,如果文件不存在则创建;如果文件存在直接追加,只写打开
a+ 追加读写打开,如果文件不存在则创建;如果文件存在则追加读写打开返回值:成功:文件指针失败:NULL */
FILE *fopen(const char *path, const char *mode);

1.1 只读打开文件,并且文件不存在

程序:

#include <stdio.h>int test1()
{//使用fopen函数打开或者创建文件,返回文件指针FILE *fp = NULL;//以只读的方式打开文件,如果文件不存在则报错fp = fopen("./file.txt", "r");if(fp == NULL){printf("fail to fopen\n");return -1;}//使用fclose关闭文件fclose(fp);
}int main(int argc, char *argv[])
{test1(fp);return 0;
}

运行结果:

1.2 只写打开文件,并且文件不存在

程序:

#include <stdio.h>int test2()
{//使用fopen函数打开或者创建文件,返回文件指针FILE *fp = NULL;//以只写的方式打开文件,如果文件不存在则创建,如果文件存在清空fp = fopen("./file.txt", "w");if(fp == NULL){printf("fail to fopen\n");return -1;}//使用fclose关闭文件fclose(fp);
}int main(int argc, char *argv[])
{    test2();return 0;
}

运行结果:

1.3 只写打开文件,并且文件存在,且有内容

程序:与3.2只写打开文件,并且文件不存在,程序相同

运行结果:

1.4 追加只写打开文件,并且文件不存在

程序:

#include <stdio.h>int test3()
{//使用fopen函数打开或者创建文件,返回文件指针FILE *fp = NULL;//以只写的方式打开文件,如果文件不存在则创建,文件存在则追加fp = fopen("./file.txt", "a");if(fp == NULL){printf("fail to fopen\n");return -1;}//使用fclose关闭文件fclose(fp);
}int main(int argc, char *argv[])
{test3();return 0;
}

运行结果:

2. fclose 关闭文件

/*
功能:关闭一个文件指针,无法在对当前文件进行操作
参数:
stream:指定的文件指针,fopen函数的返回值返回值:
成功:0
失败:EOF注意:注意一个文件只能关闭一次,不能多次关闭。
关闭文件之后就不能再文件指针对文件进行读写等操作了。
*/
int fclose(FILE *stream);

程序:见fopen 打开文件,程序最后。

3. fgetc 读取一个字符

函数原型:

 /* 功能:从文件指针标识的文件中读取一个字符参数:stream:指定的文件指针返回值:成功:读取的字符失败:EOF如果文件读取完毕,也会返回EOF */int fgetc(FILE *stream);

程序:

#include <stdio.h>int test1()
{FILE *fp = NULL;fp = fopen("./file.txt", "r");if(fp == NULL){printf("fail to fopen\n");return -1;}//使用fgetc从文件中读取一个字符int c = fgetc(fp);printf("c = [%c] - %d\n", c, c);printf("test1 end \n");
}int main(int argc, char *argv[])
{FILE *fp = NULL;fp = fopen("./file.txt", "r");if(fp == NULL){printf("fail to fopen\n");return -1;}//文件的每一行结束的位置都有一个标识,是一个换行符,称之为行结束符//fgetc可以读取到行结束符int c;while((c = fgetc(fp)) != EOF){printf("c = [%c] - %d  ", c, c);}printf(" \ntest1 start \n");test1();return 0;
}

运行结果:

4.fputc 写入一个字符

函数原型:

 /* 功能:向文件指针标识的文件中写入一个字符参数:c:要写入的字符stream:指定的文件指针返回值:成功:要写入的字符失败:EOF */
int fputc(int c, FILE *stream);

程序:

#include <stdio.h>int test1()
{FILE *fp = NULL;//只写打开./file.txt,不存在则创建文件,文件存在则清空fp = fopen("./file.txt", "w");if(fp == NULL){printf("fail to fopen\n");return -1;}int i;//通过fputc函数向文件写入一个字符i = fputc('h', fp);i = fputc('e', fp);i = fputc('l', fp);i = fputc('\n', fp);i = fputc('l', fp);i = fputc('o', fp);if(i ==  EOF){printf("fail to fputc\n");return -1;}return 0;
}int main(int argc, char *argv[])
{test1();return 0;
}

运行结果:

5.fgets 从文件中读取一行字符串

函数原型:

 /* 功能:从文件中读取内容
参数:
s:保存读取到的内容
size:每次读取的最大个数
stream:文件指针返回值:
成功:读取的数据的首地址
失败:NULL如果文件内容读取完毕,也返回NULL注意:从stream所指的文件中读取字符,在读取的时候碰到换行符或者是碰到文件的末尾停止读取,或者是读取了size‐1个字节停止读取,在读取的内容后面会加一个\0,作为字符串的结尾 */
char *fgets(char *s, int size, FILE *stream);

(1)读取的字节数小于文件一行内容,提前结束读取

程序:

#include <stdio.h>//fgets读取的字节数大于文件一行内容,碰到 换行符 \n 提前结束读取
int test1() 
{FILE *fp = NULL;fp = fopen("./file.txt", "r");if(fp == NULL){printf("fail to fopen\n");return -1;}//使用fgets读取文件内容//fgets每次读取时最多读取文件一行内容,只要遇到行结束符就立即返回char buf[32] = {0};//从fp里读取32个字节到buffgets(buf, 32, fp);printf("buf = %s\n", buf);printf("test1 end \n");
}int main(int argc, char *argv[])
{printf("test1 start \n");test1();return 0;
}

运行结果:

(2)读取的字节数小于文件一行内容,提前结束读取

程序:

#include <stdio.h>//fgets读取的字节数小于文件一行内容,提前结束读取 
int test2() 
{FILE *fp = NULL;//file.txt内容 0123459789abcdefghijABCDEFGHIJfp = fopen("./file.txt", "r");if(fp == NULL){printf("fail to fopen\n");return -1;}//使用fgets读取文件内容//fgets每次读取时最多读取文件一行内容,只要遇到行结束符就立即返回char buf[32] = {0};//从fp里读取15个字节到buffgets(buf, 15, fp);printf("buf = %s\n", buf);printf("test2 end \n");
}int main(int argc, char *argv[])
{printf("test2 start \n");test2();return 0;
}

运行结果:

6.fputs 向文件写入一个字符串

函数原型:

 /* 功能:向文件写入数据参数:s:要写入的内容stream:文件指针返回值:成功:写入文件内容的字节数失败:EOF */
int fputs(const char *s, FILE *stream);

程序:

#include <stdio.h>int main(int argc, char *argv[])
{FILE *fp = NULL;fp = fopen("./file.txt", "w");if(fp == NULL){printf("fail to fopen\n");return -1;}//通过fputs函数向文件写入数据fputs("0123459789\n", fp);fputs("ABCDEFGHIJ", fp);fputs("9876543210", fp);return 0;
}

运行结果:

file.txt内容:

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

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

相关文章

如何检查CMS建站系统的插件是否安全?

检查好CMS建站系统的插件安全是确保网站安全的重要环节&#xff0c;对于常见的安全检查&#xff0c;大家可以利用以下几种有效的方法和工具&#xff0c;来帮你评估插件的安全性。 1. 检查插件来源和开发者信誉 选择可信来源&#xff1a;仅从官方插件库或可信的第三方开发者处…

使用Dependency Walker和Beyond Compare快速排查dll动态库损坏或被篡改的问题

目录 1、问题描述 2、用Dependency Walker工具打开qr.dll库&#xff0c;查看库与库的依赖关系以及接口调用情况&#xff0c;定位问题 3、使用Beyond Compare工具比较一下正常的msvcr100d.dll和问题msvcr100d.dll的差异 4、最后 C软件异常排查从入门到精通系列教程&#xff…

【CF】Day9——Codeforces Round 953 (Div. 2) BCD

B. New Bakery 题目&#xff1a; 思路&#xff1a; 被标签害了&#xff0c;用什么二分&#xff08; 很简单的思维题&#xff0c;首先如果a > b&#xff0c;那么全选a就行了&#xff0c;还搞啥活动 否则就选 b - a 天来搞活动&#xff0c;为什么&#xff1f; 首先如果我…

【大模型】Transformer、GPT1、GPT2、GPT3、BERT 的论文解析

前言 在自然语言处理&#xff08;NLP&#xff09;和深度学习的快速发展中&#xff0c;Transformer模型和 GPT系列模型扮演了至关重要的角色。本篇博客旨在对这些开创性的论文进行介绍&#xff0c;涵盖它们的提出时间、网络结构等关键信息&#xff0c;能够快速的理解这些模型的设…

OpenGL ES 入门指南:从基础到实战

引言&#xff1a;为什么需要 OpenGL ES&#xff1f; 在当今的嵌入式设备&#xff08;如智能手机、汽车仪表盘、智能家居中控屏&#xff09;中&#xff0c;流畅的图形渲染能力是用户体验的核心。OpenGL ES&#xff08;OpenGL for Embedded Systems&#xff09; 作为行业标准&am…

51单片机指令系统入门

目录 基本概念讲解 一、机器指令​ 二、汇编指令​ &#xff08;一&#xff09;汇编指令的一般格式 &#xff08;二&#xff09;按字节数分类的指令 三、高级指令 总结​ 基本概念讲解 指令是计算机&#xff08;或单片机&#xff09;中 CPU 能够识别并执行的基本操作命令…

AtCoder Beginner Contest 397(ABCDE)

目录 A - Thermometer 翻译&#xff1a; 思路&#xff1a; 实现&#xff1a; B - Ticket Gate Log 翻译&#xff1a; 思路&#xff1a; 实现&#xff1a; C - Variety Split Easy 翻译&#xff1a; 思路&#xff1a; 实现&#xff1a; D - Cubes 翻译&#xff1a…

Spring Cloud Gateway 生产级实践:高可用 API 网关架构与流量治理解析

API 网关的核心价值 在分布式微服务架构中&#xff0c;API 网关作为系统流量的唯一入口&#xff0c;承担着路由分发、安全防护、流量治理三大核心职责。Spring Cloud Gateway 基于响应式编程模型与 Netty 高性能网络框架&#xff0c;提供灵活的路由规则、动态过滤器链和深度集…

在Pycharm配置conda虚拟环境的Python解释器

〇、前言 今天在配置python解释器时遇到了这样的问题 经过一下午自行摸索、上网搜寻后&#xff0c;终于找到的解决的方案&#xff0c;遂将该方法简要的记录下来&#xff0c;以备后用&#xff0c;并希望能帮助到有同样问题或需求的朋友:) 我所使用的软件的版本如下&#xff0c;假…

集成学习(上):Bagging集成方法

一、什么是集成学习&#xff1f; 在机器学习的世界里&#xff0c;没有哪个模型是完美无缺的。就像古希腊神话中的"盲人摸象"&#xff0c;单个模型往往只能捕捉到数据特征的某个侧面。但当我们把多个模型的智慧集合起来&#xff0c;就能像拼图一样还原出完整的真相&a…

Springboot+Vue登录、注册功能(含验证码)(后端!)

我们首先写一个接口&#xff0c;叫login&#xff01;然后对传入一个user&#xff0c;因为我们前端肯定是要传过来一个user&#xff0c;然后我们后端返回一个user&#xff0c;因为我们要根据这个去校验&#xff01;我们还引入了一个hutool的一个东西&#xff0c;在pom文件里面引…

冯 • 诺依曼体系结构

冯 • 诺依曼体系结构 一、冯 • 诺依曼体系结构推导阶段 1&#xff1a;初始计算机体系结构&#xff08;仅输入、运算、输出&#xff09;阶段 2&#xff1a;加入控制功能&#xff0c;初步形成 CPU 概念阶段 3&#xff1a;性能瓶颈与引入内存阶段 4&#xff1a;最终冯诺依曼体系…

2025人工智能“落地生花”:这六大领域正掀起颠覆性革命

——从医疗到养老&#xff0c;一场“AI”的全民狂欢正在上演 2025年的春天&#xff0c;全球科技界的热搜被一个中国AI大模型“霸榜”——DeepSeek。从春晚的机器人热舞到政务系统的“数字员工上岗”&#xff0c;从医疗诊断到工业炼钢&#xff0c;这场始于春节的技术海啸&#…

蓝耘智算|从静态到动态:探索Maas平台海螺AI图片生成视频功能的强大能力

文章目录 &#x1f44f;一、技术介绍&#x1f44f;二、平台注册&#x1f44f;三、功能体验&#x1f44f;四、总结 随着人工智能技术的快速发展&#xff0c;视频处理和生成技术已经成为了众多行业关注的热点。最近&#xff0c;我有机会体验了蓝耘智算平台的Maas平海螺AI视频产品…

解决从deepseek接口获取的流式响应输出到前端都是undefined的问题

你的前端 EventSource 代码遇到了 undefined 连续输出 的问题&#xff0c;通常是因为&#xff1a; AI 返回的内容被拆成了单个字符&#xff0c;导致前端 JSON.parse(event.data).content 获取到的是单个字符&#xff0c;而 undefined 可能是因为某些数据块没有 content 字段。…

前缀和 之 哈希表 之 和 的奇偶与倍数

文章目录 930.和相同的二元子数组523.连续的子数组和 求解连续子数组的和的问题&#xff0c;常常会使用到这个前缀和的思路&#xff0c;当然当数组存在单调性的时候&#xff0c;可以考虑使用不定长滑动窗口&#xff0c;在这里解释一下&#xff0c;何为数组的和存在这个单调性&a…

Docker Compose 和 Kubernetes(K8s)对比

Docker Compose 和 Kubernetes&#xff08;K8s&#xff09;在某些方面有相似的功能&#xff0c;但它们的 核心用途和适用场景不同。以下是它们的主要区别和联系&#xff1a; 1. Docker Compose 和 Kubernetes 的区别 对比项Docker ComposeKubernetes&#xff08;K8s&#xff0…

晶艺代理,100V3.5A高耐压LA1823完全替换MP9487--启烨科技有限公司

晶艺品牌LA1823是异步降压转换器&#xff0c;COT控制&#xff0c;PFM工作模式, 150KHz/ 250KHz/ 450KHz &#xff0c;开关频率可调节&#xff0c;输入电压4.5~100V&#xff0c;2A平均电流&#xff0c;峰值电流3.5A&#xff0c;采用ESOP8封装。 晶艺LA1823的特性&#xff1a; 4.…

PLC控制柜在技术创新驱动中功能演进 尤劲恩科技

在智能制造体系中&#xff0c;PLC控制柜不仅承担着传统设备控制的基础功能&#xff0c;更通过工业以太网、PROFIBUS等现场总线技术&#xff0c;构建起分布式控制系统&#xff08;DCS&#xff09;。这种拓扑结构使生产线具备实时数据采集、远程监控和智能决策能力&#xff0c;显…

【JavaEE】Spring Boot 日志

目录 一、日志概述二、使用日志2.1 打印日志2.2 日志框架2.2.1 门面 / 外观 模式 2.3 日志级别2.3.1 六大分类2.3.2 使用 2.4 日志级别配置2.5 日志的持久化2.6 日志文件分割2.7 日志文件格式2.8 Slf4j 简单打印日志 一、日志概述 ⽇志主要是为了发现问题, 分析问题, 定位问题…