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

简单h5灰色词优化培训

简单h5,灰色词优化培训,邯郸怎样做网站,做推广哪个网站好该文章上一篇:C/C文件操作(细节满满,part1)_仍有未知等待探索的博客-CSDN博客 个人主页:仍有未知等待探索_C语言疑难,数据结构,小项目-CSDN博客 专题分栏:C语言疑难_仍有未知等待探索的博客-CSDN博客 目录 …

该文章上一篇:C/C++文件操作(细节满满,part1)_仍有未知等待探索的博客-CSDN博客

个人主页:仍有未知等待探索_C语言疑难,数据结构,小项目-CSDN博客

专题分栏:C语言疑难_仍有未知等待探索的博客-CSDN博客

目录

 

一、引言

二、文件的顺序

1、输入流和输出流

2、fputc

1.功能

2. 参数

3.用法

4.注意 

3、fgetc

1.功能 

2.参数

3.用法

4、fputs 

1、功能 

2、参数

3、用法

5、fgets 

​编辑 1、功能 

2、参数

3、用法

4、注意 

6、fprintf

1、功能 

2、参数

3、用法 

7、fscanf 

1、功能

2、参数

3、 用法

8、fwrite

​编辑

1、功能

2、参数

3、用法

4、注意 

9、fread 

1、功能

2、参数

3、用法

4、注意 

三、文件的随机读写

1、fseek

2、ftell 

3、rewind 

四、二进制文件和文本文件

五、文件读取结束的标志

1、文本文件读取结束标志

2、二进制文件读取结束标志

六、文件缓冲区


 

一、引言

通过上篇文章,已经了解了什么是文件打开和关闭文件的操作流的概念等。

如果对于上述的内容感到有点陌生了,不妨去看一看,文章链接在开头。

这篇文章的内容将会包含写文件的基本操作。

文件的顺序读写:是每次从第一个字符开始读和写。

文件的随机读写:是每次可以从任意一个位置读和写。

二、文件的顺序

适用文件功能函数名适用于
文本文件字符输入函数fgetc所有输入流
文本文件字符输出函数fputc所有输出流
文本文件文本行输入函数fgets所有输入流
文本文件文本行输出函数fputs所有输出流
文本文件格式化输入函数fscanf所有输入流
文本文件格式化输出函数fprintf所有输出流
二进制文件二进制输入fread文件
二进制文件二进制输出fwrite文件

1、输入流和输出流

流相当于是一个过渡的过程。怎么判上述函数是输入流还是输出流呢?

我们可以站在内存的视角来看,如果是数据流向内存,我们就可以看作是输入流。反之,则是输出流。

就以fgetc和fputc为例:

2、fputc

1.功能

将一个字符character写进stream流中。

2. 参数

character:字符(字符的本质就是ASCII码值,是整数)。

stream:文件指针。

3.用法

#include<stdio.h>
int main()
{//以‘只写’的方式打开文件FILE* pf = fopen("test.txt", "w");if (pf == NULL){perror("fopen");return 0;}//处理//输入for (int i = 'a'; i <= 'z'; i++)fputc(i, pf);//关闭文件fclose(pf);pf = NULL;return 0;
}

4.注意 

用什么方式打开文件就只能完成该功能。就比如说,以‘只写’的方式打开文件,就不能进行读取操作。

如果对于打开方式模糊了,请点击下面链接,查看上一篇的内容:

C/C++文件操作(细节满满,part1)_仍有未知等待探索的博客-CSDN博客

3、fgetc

1.功能 

 从stream流中获取数据。

2.参数

文件指针类型的stream流。

3.用法

如果获取失败,函数将返回EOF

//以‘只读’的方式打开文件FILE* pf = fopen("test.txt", "r");if (pf == NULL){perror("fopen");return 0;}//处理//输出int ch;while((ch=fgetc(pf))!=EOF){printf("%c ",ch);}//关闭文件fclose(pf);pf = NULL;return 0;
}

4、fputs 

1、功能 

将一个字符串写入流中。

2、参数

str:需要写入文件的参数。

stream:文件流。

3、用法

如果没有‘\n’的话,他会把数据输入在一行。 

如果把文件指针pf换成stdout的话,程序会把数据打印在屏幕上。

#include<stdio.h>
int main()
{//以‘只写’的方式打开文件FILE* pf = fopen("test.txt", "w");if (pf == NULL){perror("fopen");return 0;}//处理fputs("abcd", pf);//不换行写法fputs("abcd\n", pf);//换行写法fputs("abcd", stdout);//将数据打印在屏幕上//关闭文件fclose(pf);pf = NULL;return 0;
}

5、fgets 

 1、功能 

从流中获取字符串。

2、参数

str:字符串。

num:读取的个数。

stream:文件流。

3、用法

如果获取失败,函数将返回EOF

#include<stdio.h>
int main()
{//以‘只读’的方式打开文件FILE* pf = fopen("test.txt", "r");if (pf == NULL){perror("fopen");return 0;}//处理char str[20];fgets(str, 10, pf);printf("%s", str);//关闭文件fclose(pf);pf = NULL;return 0;
}

4、注意 

  1. 函数最多只会读取一行的数据。
  2. 当数据足够多时,参数为num,函数只会读取num-1个数据。

6、fprintf

1、功能 

将格式化数据写入文件流中。

2、参数

通过将fprintf和printf的参数相比较,会发现,fprintf的参数就比printf的参数多了一个文件指针。 

3、用法 

#include<stdio.h>
struct S
{float f;char ch;int n;
};
int main()
{struct S s = { 4.14f,'w',1 };//以‘只 写’的方式打开文件FILE* pf = fopen("test.txt", "w");if (pf == NULL){perror("fopen");return 0;}//处理printf("%f %c %d\n", s.f, s.ch, s.n);fprintf(pf,"%f %c %d\n", s.f, s.ch, s.n);//关闭文件fclose(pf);pf = NULL;return 0;
}

7、fscanf 

1、功能

从流中读取数据。

2、参数

fscanf和scanf的参数差不多,多了一个文件流stream。

3、 用法

#include<stdio.h>
struct S
{float f;char ch;int n;
};
int main()
{struct S s = { 4.14f,'r',1 };FILE* pf = fopen("test.txt", "r");if (pf == NULL){perror("fopen");return 0;}//处理fscanf(pf, "%f %c %d", &(s.f), &(s.ch), &(s.n));printf("%f %c %d", s.f, s.ch, s.n);//关闭文件fclose(pf);pf = NULL;return 0;
}

8、fwrite

1、功能

将ptr中的数据写入流中,大小为size,个数为count。

2、参数

ptr:指向要写入文件流中的数据的指针。

size:每个数据的大小。

count:数据个数。

stream:要写入的文件流中。

3、用法

#include<stdio.h>
int main()
{FILE* pf = fopen("test.txt", "wb");//abcdefif (pf == NULL){perror("fopen");return 0;}//处理char str[] = "abcd";fwrite(str, sizeof(char), sizeof(str) / sizeof(str[0]), pf);//关闭文件fclose(pf);pf = NULL;return 0;
}

4、注意 

文件的打开方式要和函数匹配,要用二进制的写的方式

9、fread 

1、功能

从文件流中读取数据。

2、参数

ptr:指向文件流中的数据所要存到的位置的指针。

size:每个数据的大小。

count:数据个数。

stream:文件流。

3、用法

#include<stdio.h>
int main()
{FILE* pf = fopen("test.txt", "rb");//abcdefif (pf == NULL){perror("fopen");return 0;}//处理char str[20];fread(str, sizeof(char), sizeof(str) / sizeof(str[0]), pf);printf("%s", str);//关闭文件fclose(pf);pf = NULL;return 0;
}

4、注意 

文件的打开方式要和函数匹配,要用二进制的读的方式

三、文件的随机读写

根据文件指针的位置和偏移量来确定文件指针的位置。

文件指针当前位置
SEEK_SETBeginning of file
SEEK_ENDCurrent position of the file pointer
SEEK_CUREnd of file

1、fseek

 功能是改变文件指针的位置。

#include<stdio.h>
int main()
{FILE* pf = fopen("test.txt", "r");//abcdefif (pf == NULL){perror("fopen");return 0;}//处理int ch;ch = fgetc(pf);//aprintf("%c\n", ch);ch = fgetc(pf);//bprintf("%c\n", ch);ch = fgetc(pf);//cprintf("%c\n", ch);fseek(pf, -1, SEEK_CUR);ch = fgetc(pf);printf("%c\n", ch);//c//关闭文件fclose(pf);pf = NULL;return 0;
}

2、ftell 

功能是返回文件当前指针的偏移量。

#include<stdio.h>
int main()
{FILE* pf = fopen("test.txt", "r");//abcdefif (pf == NULL){perror("fopen");return 0;}//处理int ch;ch = fgetc(pf);//aprintf("%c\n", ch);ch = fgetc(pf);//bprintf("%c\n", ch);ch = fgetc(pf);//cprintf("%c\n", ch);int pos = ftell(pf);printf("%d", pos);//关闭文件fclose(pf);pf = NULL;return 0;
}

3、rewind 

功能是将文件指针返回起始位置。

#include<stdio.h>
int main()
{FILE* pf = fopen("test.txt", "r");//abcdefif (pf == NULL){perror("fopen");return 0;}//处理int ch;ch = fgetc(pf);//ach = fgetc(pf);//bch = fgetc(pf);//cint pos = ftell(pf);printf("%d\n", pos);rewind(pf);pos = ftell(pf);printf("%d", pos);//关闭文件fclose(pf);pf = NULL;return 0;
}

四、二进制文件和文本文件

根据数据的存储形式,文件可以分为二进制文件和文本文件。

数据在文件中以二进制存储,就是二进制文件。

数据在文件中以ASCII码值存储,就是文本文件。

五、文件读取结束的标志

在文件读取过程中,不能用feof函数的返回值直接用来判断文件的是否结束。

1、文本文件读取结束标志

fgetc——判断是否为EOF

fgets——判断是否为NULL

2、二进制文件读取结束标志

fread——判断返回值是否小于实际要读的个数。

六、文件缓冲区

谢谢大家支持! 


文章转载自:
http://unifier.c7512.cn
http://aeropolitics.c7512.cn
http://dah.c7512.cn
http://iridectome.c7512.cn
http://parashah.c7512.cn
http://megagametophyte.c7512.cn
http://elasmobranch.c7512.cn
http://hypereutectic.c7512.cn
http://orderless.c7512.cn
http://gentoo.c7512.cn
http://borazon.c7512.cn
http://thereon.c7512.cn
http://flavopurpurin.c7512.cn
http://excrement.c7512.cn
http://sovereign.c7512.cn
http://tome.c7512.cn
http://diathermize.c7512.cn
http://feebleness.c7512.cn
http://desuperheat.c7512.cn
http://cushion.c7512.cn
http://missing.c7512.cn
http://hardgoods.c7512.cn
http://stannic.c7512.cn
http://hygienically.c7512.cn
http://downtick.c7512.cn
http://turtlehead.c7512.cn
http://tautophony.c7512.cn
http://grumpy.c7512.cn
http://jiggly.c7512.cn
http://magnetoelasticity.c7512.cn
http://elkhound.c7512.cn
http://paraphrastic.c7512.cn
http://cryoextraction.c7512.cn
http://slat.c7512.cn
http://lascar.c7512.cn
http://exponential.c7512.cn
http://impromptu.c7512.cn
http://iodopsin.c7512.cn
http://halakha.c7512.cn
http://septiform.c7512.cn
http://undeviating.c7512.cn
http://foreknowledge.c7512.cn
http://oval.c7512.cn
http://guestimate.c7512.cn
http://micrococcic.c7512.cn
http://antibacterial.c7512.cn
http://terricolous.c7512.cn
http://bhil.c7512.cn
http://skirret.c7512.cn
http://actuality.c7512.cn
http://cacodoxy.c7512.cn
http://gascogne.c7512.cn
http://crwth.c7512.cn
http://bachelordom.c7512.cn
http://expromissor.c7512.cn
http://sacque.c7512.cn
http://narcist.c7512.cn
http://unassisted.c7512.cn
http://lollingite.c7512.cn
http://irremissible.c7512.cn
http://tragopan.c7512.cn
http://seafarer.c7512.cn
http://sycamore.c7512.cn
http://fellah.c7512.cn
http://tokio.c7512.cn
http://squamaceous.c7512.cn
http://phonics.c7512.cn
http://echinite.c7512.cn
http://bespoken.c7512.cn
http://boatage.c7512.cn
http://fairly.c7512.cn
http://chooser.c7512.cn
http://headrace.c7512.cn
http://dyspeptic.c7512.cn
http://hyperosmolality.c7512.cn
http://concurrence.c7512.cn
http://spinto.c7512.cn
http://pediatrics.c7512.cn
http://ergogram.c7512.cn
http://kindhearted.c7512.cn
http://hardship.c7512.cn
http://wrapped.c7512.cn
http://thoughtfully.c7512.cn
http://caucasic.c7512.cn
http://sure.c7512.cn
http://remorse.c7512.cn
http://deliverance.c7512.cn
http://leadwork.c7512.cn
http://copydesk.c7512.cn
http://unmirthful.c7512.cn
http://conics.c7512.cn
http://philologian.c7512.cn
http://multiverse.c7512.cn
http://diuron.c7512.cn
http://nepalese.c7512.cn
http://mi.c7512.cn
http://laterization.c7512.cn
http://loosely.c7512.cn
http://letterpress.c7512.cn
http://underwork.c7512.cn
http://www.zhongyajixie.com/news/86074.html

相关文章:

  • 婚恋网站排名前10网站推广100种方法
  • 建站公司专业定制看b站视频软件下载安装
  • 做调差问卷的网站磁力屋 最好用
  • 好的手机网站推荐泰州seo外包
  • 手机网站设计理念宁波seo网络推广
  • 石家庄公司网站设计线上营销活动有哪些
  • 红色门户网站襄阳网站推广优化技巧
  • 南阳做网站公司itme收录优美图片官网
  • 做网站在线咨询百度一下首页官网下载
  • 深圳B2C网站建设苏州seo推广
  • 金融服务网站建设内容产品推广公司
  • 网站开发页面适应高度如何创建网站平台
  • 做网站的公司怎么赚钱吗seo站长助手
  • 无锡网站建设推广hao123上网从这里开始官方
  • 微信公众号登录不了木卢seo教程
  • 柳江网站建设宣传软文案例
  • 做心悦腾龙光环的网站网站关键词推广
  • 做g3云推广需要网站网站建设排名优化
  • 开源企业网站程序深圳百度代理
  • 盐山网站制作活动策划方案详细模板
  • wordpress thremeseo代理
  • 公司网站被百度收录搜索关键词的工具
  • 彩票网站给实体店做代销免费域名申请网站
  • 执业医师变更注册网站seo网络推广技术
  • 公司如何建立微网站高端网站优化公司
  • 做网站建设的销售薪水培训方案及培训计划
  • 中海建筑建设有限公司网站网络营销师报名官网
  • 怎么做和美团一样的网站网络推广引流方式
  • html5网站开发环境域名查询 站长查询
  • 购买域名和网站app营销策划方案