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

网站建设网络科技公司加盟狗和女人做的网站

网站建设网络科技公司加盟,狗和女人做的网站,专业广州网站建设,如何做网站 知乎1. 为什么使⽤⽂件? 如果没有⽂件,我们写的程序的数据是存储在电脑的内存中,如果程序退出,内存回收,数据就丢失 了,等再次运⾏程序,是看不到上次程序的数据的,如果要将数据进⾏持久…

1. 为什么使⽤⽂件?

如果没有⽂件,我们写的程序的数据是存储在电脑的内存中,如果程序退出,内存回收,数据就丢失 了,等再次运⾏程序,是看不到上次程序的数据的,如果要将数据进⾏持久化的保存,我们可以使⽤ ⽂件。

2.文件详解 

2.1文件分类

2.1 程序⽂件 程序⽂件包括源程序⽂件(后缀为.c),⽬标⽂件(windows环境后缀为.obj),可执⾏程序(windows 环境后缀为.exe)。

2.2 数据⽂件 ⽂件的内容不⼀定是程序,⽽是程序运⾏时读写的数据,⽐如程序运⾏需要从中读取数据的⽂件,或 者输出内容的⽂件。

2.2⽂件名

⼀个⽂件要有⼀个唯⼀的⽂件标识,以便⽤⼾识别和引⽤。 ⽂件名包含3部分:⽂件路径+⽂件名主⼲+⽂件后缀 例如: c:\code\test.txt

为了⽅便起⻅,⽂件标识常被称为⽂件名。

3. ⽂件的打开和关闭 

3.1文件指针

缓冲⽂件系统中,关键的概念是“⽂件类型指针”,简称“⽂件指针”。 每个被使⽤的⽂件都在内存中开辟了⼀个相应的⽂件信息区,⽤来存放⽂件的相关信息(如⽂件的名 字,⽂件状态及⽂件当前的位置等)。这些信息是保存在⼀个结构体变量中的。该结构体类型是由系 统声明的,取名 FILE.

下⾯我们可以创建⼀个FILE*的指针变量:

FILE* pf;//⽂件指针变量 

 pf是⼀个指向FILE类型数据的指针变量。可以使pf指向某个⽂件的⽂件信息区(是⼀个结构体变 量)。通过该⽂件信息区中的信息就能够访问该⽂件。也就是说,通过⽂件指针变量能够间接找到与 它关联的⽂件。

3.2文件打开与关闭 

ANSI C 规定使⽤ fopen 函数来打开⽂件, fclose 来关闭⽂件。

//打开⽂件

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

//关闭⽂件

int fclose ( FILE * stream );

mode表⽰⽂件的打开模式,下⾯都是⽂件的打开模式:

1、“r”     以只读方式打开一个文件;

2、“w”    以只写方式打开一个文件;

3、“a”    打开一个文件追加;

4、“rb”   以只读方式打开一个二进制文件;

5、“rw”  以只写方式打开一个二进制文件;

6、“ra”  打开一个二进制文件追加;

7、"r+"  以读写方式打开一个文件;

8、“w+” 以读写方式建立一个文件;

9、“a+”  以读写方式打开一个文件追加;

10、“rb+”  以读写方式打开一个二进制文件;

11、“wb+” 以读写方式建立一个二进制文件;

12、“ab+”  以读写方式打开一个二进制文件追加。

 

#include <stdio.h>
int main ()
{FILE * pFile;//打开⽂件pFile = fopen ("myfile.txt","w");//⽂件操作if (pFile!=NULL){fputs ("fopen example",pFile);//关闭⽂件fclose (pFile);}return 0;
}

4. ⽂件的顺序读写 

4.1 顺序读写函数介绍

 

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

5. ⽂件读取结束的判定

5.1 被错误使⽤的 feof

牢记:在⽂件读取过程中,不能⽤feof函数的返回值直接来判断⽂件的是否结束。

feof 的作⽤是:当⽂件读取结束的时候,判断是读取结束的原因是否是:遇到⽂件尾结束。

1. ⽂本⽂件读取是否结束,判断返回值是否为 EOF ( fgetc ),或者 NULL ( fgets )

例如:

• fgetc 判断是否为 EOF.

• fgets 判断返回值是否为 NULL.

#include <stdio.h>
#include <stdlib.h>
int main(void)
{int c;                                    // 注意:int,⾮char,要求处理EOFFILE* fp = fopen("test.txt", "r");if(!fp) {perror("File opening failed");return EXIT_FAILURE;}//fgetc 当读取失败的时候或者遇到⽂件结束的时候,都会返回EOFwhile ((c = fgetc(fp)) != EOF) // 标准C I/O读取⽂件循环{ putchar(c);}//判断是什么原因结束的if (ferror(fp))puts("I/O error when reading");else if (feof(fp))puts("End of file reached successfully");fclose(fp);
}

⼆进制⽂件的例⼦:

#include <stdio.h>
enum { SIZE = 5 };
int main(void)
{double a[SIZE] = {1.,2.,3.,4.,5.};FILE *fp = fopen("test.bin", "wb"); // 必须⽤⼆进制模式fwrite(a, sizeof *a, SIZE, fp); // 写 double 的数组fclose(fp);double b[SIZE];fp = fopen("test.bin","rb");size_t ret_code = fread(b, sizeof *b, SIZE, fp); // 读 double 的数组if(ret_code == SIZE) 
{puts("Array read successfully, contents: ");for(int n = 0; n < SIZE; ++n) printf("%f ", b[n]);putchar('\n');} 
else { // error handlingif (feof(fp))printf("Error reading test.bin: unexpected end of file\n");else if (ferror(fp)) {perror("Error reading test.bin");}}fclose(fp);}

 

6. ⽂件缓冲区 

ANSIC 标准采⽤“缓冲⽂件系统” 处理的数据⽂件的,所谓缓冲⽂件系统是指系统⾃动地在内存中为 程序中每⼀个正在使⽤的⽂件开辟⼀块“⽂件缓冲区”。从内存向磁盘输出数据会先送到内存中的缓 冲区,装满缓冲区后才⼀起送到磁盘上。如果从磁盘向计算机读⼊数据,则从磁盘⽂件中读取数据输 ⼊到内存缓冲区(充满缓冲区),然后再从缓冲区逐个地将数据送到程序数据区(程序变量等)。缓 冲区的⼤⼩根据C编译系统决定的。

 

 

 

 

 

 

 

 

 

http://www.yayakq.cn/news/892916/

相关文章:

  • 网站策划 要求企业所得税怎么算举例
  • 自己做网站步骤 域名成都网站外包公司
  • 网站建设建网站年轻的母亲网站建设介绍推广用语
  • wordpress站点标题副标题换行ios认证 东莞网站建设
  • 湖南营销型网站建设 皆来磐石网络关闭微信小程序入口
  • 做系统简单还是网站简单网站建设销售招聘
  • seo网站排名的软件德宏做网站
  • 电商类网站建设需要多少钱为什么我的网站备案通过还是显示未备案
  • 网站开发和移动开发WordPress卡密充值怎么用
  • 烟台做网站的价格建站收入
  • 企业建设好一个网站后_如何进行网站推广?免费域名注册网站哪个好
  • 卖建材的网站广州今天新闻
  • 成都企业网站seo技术响应式布局网站实例
  • 湖北省住房和城乡建设厅门户网站wordpress对接公众号源码
  • 如何做盗版小说网站安徽六安职业技术学院
  • 网站开发商品管理表字段折叠分类目录模板wordpress
  • 昌网站建设wordpress 内容页面
  • 江门网站制作方案定制网络推广培训哪里好
  • 制作网站域名需要多少钱泉州百度seo公司
  • 海外seo网站建设专业深圳网站建设公司
  • windows软件开发台州网站优化
  • 网站排名张家港电子商务网站建设与管理试卷6
  • 哪里有专业做网站的wordpress centos6
  • 湖南省建设信息网站网站建设哪里学
  • 电商网站介绍谷歌搜索引擎下载
  • 环保局网站建设申请做网站运营工资多少
  • 无锡做推广的网站毕业设计做网站大小有什么要求
  • 建旅游网站多少钱做水果网站特点分析
  • 建设银行城东支行网站建站
  • 盐城网站建设小程序公司物联网平台软件开发