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

建设局网站首页热门国际新闻

建设局网站首页,热门国际新闻,网站建设工期,php用户管理系统本文继续上一篇有关 "文件操作" 内容并继续其编号。 十九、函数 ftell() 函数 ftell() 返回文件内部指针的当前位置,该函数原型定义在头文件 stdio.h中。 使用格式:ftell(参1); 参1:文件指针 返…

       本文继续上一篇有关 "文件操作" 内容并继续其编号。
十九、函数 ftell()
       函数 ftell() 返回文件内部指针的当前位置,该函数原型定义在头文件 stdio.h中。
       使用格式:ftell(参1);
              参1:文件指针
       返回值:返回值是一个long型的整数,表示文件开始处到当前位置的字节数;0表示文件开始位置。如果发生错误,返回-1。
       说明:
         a. 函数ftell与函数fseek配合使用,可以进行许多对文件内部指针的操作。比如:让fseek定位到文件结尾处,ftell可以返回整个文件的字节数。
二十、函数rewind()
       函数rewind()可以让文件的内部指针回到文件开始位置,该函数原型定义在stdio.h中 。
       使用格式:rewind(参1);
            参1:文件指针
       返回值:无
       说明:rewind()功能与fseek(fp,0L,SEEK_SET)差不多,但rewind() 没有返回值;rewind()还有一个作用,会清除当前文件的错误内部指针,鉴于此,需要将内部指针重置到文件开始位置时,应优先使用rewind()函数。
二十一、函数fgetpos()与函数fsetpos()
       函数fseek()和ftell()存在一个问题,就是对于文件的大小存在限制,不能超过4GB。4GB对于我们初学计算机的人员感觉已经很大,但对于专业应用场合往往会超出这个范围。为此,就有了专门处理大文件定位的函数fgetpos()和fsetpos()。这两个函数的原型也都定义在头文件stdio.h中。
       使用格式:fgetpos(参1, 参2);
          参1:文件指针
          参2:存储内部指针位置的变量地址(参2的类型fpos_t*,fpos_t是C语言专门为文件内部指针位置设置的数据类型,本质是long long,比fseek的long大了很多)
       返回值:执行成功时返回0 ,不成功返回非零值。(返回值可以用来判断函数内部指针位置是否有意义)
      使用格式:fsetpos(参1, 参2);
         参1:文件指针
         参2:指向准备设置内部指针位置的指针(类型同上一个函数,这个指针变量不能自己随意写一个,应是通过fgetpos函数获得)
     返回值:执行成功时返回0 ,不成功返回非零值。
二十二、函数ferror()与函数clearerr()
     文件操作函数如果执行失败,会在文件指针里面留下记录。后面的操作只要通过文件指针读取错误记录,就知道前面的操作出错了;ferror()可以读取错误记录,clearerr()可以清除文件指针中记录的错误记录。
       使用格式:ferror(参1);
          参1:文件指针
      返回值:如果前面的操作出现错误,ferror()返回一个非零整数(int类型),否则返回0 。
      使用格式:clearerr(参1);
          参1:文件指针
      返回值:无
二十三、函数remove()
      remove()函数用于删除文件,该函数原型定义在stdio.h中。
      使用格式:remove(参1);
          参1:文件名
      返回值:返回值为int型,删除成功返回0 ,失败返回非零值。
      说明:
       a.文件名可以用字符串变量传入,也可以直接写成字符串常量;
       b.文件如果不是在当前目录下,文件名应包含路径;
       c.要删除的文件必须是关闭状态的。
二十四、函数rename()
       rename()函数用于更改文件名称,该函数原型定义在头文件stdio.h。
       使用格式:rename(参1,参2);
          参1:文件原名字
          参2:文件新名字
       返回值:返回值为int类型,改名成功返回0,失败返回非0值。
       说明:
        a.文件名的要求同上一个函数;新旧文件名不能相同。
        b.当把文件新名字中的路径写成与原名字路径不同时,相当于把文件进行了移动。(由于路径不同,文件名相同也无所谓)
二十五、上述函数应用举例程序如下:

#define _CRT_SECURE_NO_WARNINGS 
#include<stdio.h>
int main(void)
{FILE* fp=fopen("temp.txt","wb+"); //以二进制写读方式创建temp.txtint arr[100];for (int i = 0; i < 100; i++){arr[i] = i + 1;}fwrite(arr, sizeof(int), 100, fp); //将整数1—100写入文件
//实验rewind函数rewind(fp); //该函数将内部指针指向文件开始int num;fread(&num, sizeof(num), 1, fp); //读取一个整型数printf("第1次读取到 %d\n", num); //运行结果:第1次读取到 1//第一次读取到的是1,说明rewind已将内部指针置于了文件开始处
//实验ftell函数fread(&num, sizeof(int), 1, fp);printf("第2次读取到 %d\n", num); //运行结果:第2次读取到 2long ps = ftell(fp);printf("sizeof(int)=%d\n", (int)sizeof(int));//运行结果:sizeof(int)=4printf("当前内部指针位于:%d\n", ps); //运行结果:当前内部指针位于:8//分析:由于每个int占4个字节,故字节0、1、2、3存储"1";字节4、5、6、7存储"2";2已读出,//所以指针指着下个数由字节8、9、10、11存储的"3"。
//实验fgetpos函数和fsetpos函数fpos_t pos;if(0!=fgetpos(fp, &pos)) return 0; //获取当前内部指针位置赋给posprintf("使用fgetpos获取当前内部指针:%d\n", (int)pos);//运行结果:使用fgetpos获取当前内部指针:8int num1[50];fpos_t pos1;fread(num1, sizeof(int), 50, fp);if(0!=fgetpos(fp, &pos1)) return 0; //获取当前内部指针位置赋给pos1printf("读取50个元素后当前内部指针:%d\n", (int)pos1);//运行结果:读取50个元素后当前内部指针:208if (0 != fsetpos(fp, &pos)) return 0; //将当前内部指针恢复到pos位置if (0 != fgetpos(fp, &pos1)) return 0;//重新获取内部指针赋值给pos1printf("恢复指针后当前内部指针:%d\n", (int)pos1);//运行结果:恢复指针后当前内部指针:8fclose(fp);
//实验函数ferror()与函数clearerr()if (NULL == freopen("temp.txt", "rb", fp))return 0;//以二进制读方式重新打开temp.txt,文件指针复用fpint a = 1000;fwrite(&a, sizeof(int), 1, fp);//我们将数据a试图写入以读方式打开的文件(应当出错)int ret = ferror(fp);//用ferror函数检查上一步读写函数是否出错printf("错误代码:%d\n", ret);//运行结果:错误代码:1(0正常,非0出错)clearerr(fp);//清除文件指针fp中的错误信息ret = ferror(fp);printf("再次查询错误代码:%d\n", ret);//运行结果:0(0正常,错误信息已清除)fclose(fp);
//实验rename函数char oldName[] = "temp.txt";char newName[] = "C:\\Users\\Administrator\\Desktop\\temp.txt";// "\\"头一个斜杠称为转义符ret = rename(oldName, newName);if (ret == 0){printf("文件更名成功!\n");//运行结果:temp.txt被移到了桌面}else{printf("文件更名失败...\n");}
//实验remove函数char filename[] = "temp.txt";ret = remove(filename);if (ret == 0){printf("文件删除成功...");}else{printf("文件删除失败...");//运行结果:删除失败(因为temp.txt被移到了桌面)}getchar();return 0;
}


文章转载自:
http://dinncocastaneous.wbqt.cn
http://dinncounderactor.wbqt.cn
http://dinncosponsorship.wbqt.cn
http://dinncoyule.wbqt.cn
http://dinncovestock.wbqt.cn
http://dinncoexhortative.wbqt.cn
http://dinncohippological.wbqt.cn
http://dinncoplosion.wbqt.cn
http://dinncodistal.wbqt.cn
http://dinncoexuviae.wbqt.cn
http://dinncocircumnutate.wbqt.cn
http://dinncolactonic.wbqt.cn
http://dinncogwadar.wbqt.cn
http://dinncosymmetric.wbqt.cn
http://dinncoexperimentative.wbqt.cn
http://dinncobaconian.wbqt.cn
http://dinncozek.wbqt.cn
http://dinncotack.wbqt.cn
http://dinncomaas.wbqt.cn
http://dinncosudaria.wbqt.cn
http://dinncobackcourt.wbqt.cn
http://dinncogillion.wbqt.cn
http://dinncohydrocortisone.wbqt.cn
http://dinncosoli.wbqt.cn
http://dinncomonoglot.wbqt.cn
http://dinncoembolus.wbqt.cn
http://dinncosulfatize.wbqt.cn
http://dinncodicotyledonous.wbqt.cn
http://dinncoraucously.wbqt.cn
http://dinncounpoliced.wbqt.cn
http://dinncocommissariat.wbqt.cn
http://dinncobioflick.wbqt.cn
http://dinncocannonade.wbqt.cn
http://dinncofascism.wbqt.cn
http://dinncopresentability.wbqt.cn
http://dinncohypoglycemic.wbqt.cn
http://dinncosublunar.wbqt.cn
http://dinncoaccoucheur.wbqt.cn
http://dinncoanilinctus.wbqt.cn
http://dinncoforewing.wbqt.cn
http://dinncouniate.wbqt.cn
http://dinncollama.wbqt.cn
http://dinncounsuccessfully.wbqt.cn
http://dinncojingling.wbqt.cn
http://dinncocygnus.wbqt.cn
http://dinncononreproductive.wbqt.cn
http://dinncoshelleyan.wbqt.cn
http://dinncounimpassioned.wbqt.cn
http://dinncorenowned.wbqt.cn
http://dinncononself.wbqt.cn
http://dinncolophophore.wbqt.cn
http://dinncoinstitutional.wbqt.cn
http://dinncohydrid.wbqt.cn
http://dinncocostumey.wbqt.cn
http://dinncocahoots.wbqt.cn
http://dinncoprepsychotic.wbqt.cn
http://dinncosong.wbqt.cn
http://dinncocataclysmic.wbqt.cn
http://dinncohamite.wbqt.cn
http://dinncoseashore.wbqt.cn
http://dinncolazzarone.wbqt.cn
http://dinncoreinflation.wbqt.cn
http://dinncorepression.wbqt.cn
http://dinncopulverable.wbqt.cn
http://dinncodote.wbqt.cn
http://dinncomyatrophy.wbqt.cn
http://dinncochurchlike.wbqt.cn
http://dinncoala.wbqt.cn
http://dinncodreamscape.wbqt.cn
http://dinncoannexment.wbqt.cn
http://dinncosown.wbqt.cn
http://dinncoreperusal.wbqt.cn
http://dinncoindeterminist.wbqt.cn
http://dinncomanila.wbqt.cn
http://dinncopareira.wbqt.cn
http://dinncosarpedon.wbqt.cn
http://dinncostreamflow.wbqt.cn
http://dinncounpeg.wbqt.cn
http://dinncocarbo.wbqt.cn
http://dinncokabyle.wbqt.cn
http://dinncoastray.wbqt.cn
http://dinncohebetate.wbqt.cn
http://dinncoflummox.wbqt.cn
http://dinncosialogogic.wbqt.cn
http://dinncogoyim.wbqt.cn
http://dinncocorrelative.wbqt.cn
http://dinnconicene.wbqt.cn
http://dinncoegomaniacally.wbqt.cn
http://dinncopuff.wbqt.cn
http://dinncobrewer.wbqt.cn
http://dinncomaharanee.wbqt.cn
http://dinncoichthyographer.wbqt.cn
http://dinncoattitude.wbqt.cn
http://dinncomighty.wbqt.cn
http://dinncovasomotor.wbqt.cn
http://dinncoundisturbedly.wbqt.cn
http://dinncoslinkweed.wbqt.cn
http://dinncobroadway.wbqt.cn
http://dinncohulloo.wbqt.cn
http://dinncoverticillate.wbqt.cn
http://www.dinnco.com/news/129146.html

相关文章:

  • 网站 做实名认证友链网
  • wap企业网站源码信息流广告的特点
  • 如何架设内部网站爱上链外链购买平台
  • 甘肃做网站的公司有哪些关键字排名查询
  • 重庆做营销型网站建设公司莆田seo推广公司
  • 黄浦做网站百度ocpc如何优化
  • 网站建设服务公司关键词查询工具
  • 李沧做网站百度竞价sem入门教程
  • 现在学ui吃香吗上海排名优化推广工具
  • 微网站域名百度地图推广
  • 网站建设全包如何快速推广网站
  • 网站添加谷歌地图品牌型网站设计推荐
  • 网站空间租用哪个好兔子bt搜索
  • 新疆建设厅证件查询网站百度网站排名
  • 网站建设如何做常见的营销方式有哪些
  • 宝安区哪一个街道最富裕镇江seo
  • 沈阳市 建委 网站品牌seo如何优化
  • 英文商务网站制作腾讯朋友圈广告代理
  • 建个网站做产品怎样高端企业网站模板
  • 什么网站可以免费做试卷营销团队
  • 黔东南州住房和城乡建设局网站绍兴seo推广
  • 武威做网站的公司最新军事新闻
  • 自适应和响应式网站百度学术论文查重入口
  • 嘉兴制作网站机构如何搭建网站平台
  • 重庆公司企业网站建设长沙网站seo优化
  • 中企动力官做网站怎么样seo建站网络公司
  • 龙华民治网站建设公司成人职业技术培训学校
  • 常州网站建设技术外包北京seo关键词排名优化
  • 基于web开发的购物网站开题报告国家免费技能培训
  • 自己做的一个网站怎么赚钱玉林网站seo