资源描述:
《HLPL-17-input-output-2-note》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、文件访问标准错误输出行输入输出其他常用库函数.输入和输出文件访问、标准错误输出、行输入输出、其他函数.北京航空航天大学数学与系统科学学院单宝松shanbs@buaa.edu.cnMay2,2012......北京航空航天大学数学与系统科学学院输入和输出文件访问标准错误输出行输入输出其他常用库函数目录.1.文件访问2.标准错误输出3.行输入输出4.其他常用库函数......北京航空航天大学数学与系统科学学院输入和输出文件访问标准错误输出行输入输出其他常用库函数Outline.1.文件访问2.标准错误输出3.行输入输出4.其
2、他常用库函数......北京航空航天大学数学与系统科学学院输入和输出文件访问标准错误输出行输入输出其他常用库函数文件访问.之前所有的例子都是访问标准输入输出本节讨论直接访问文件在本节之前,如何访问文件?......北京航空航天大学数学与系统科学学院输入和输出文件访问标准错误输出行输入输出其他常用库函数访问文件的基本步骤.1.打开FILE*fopen(char*name,char*mode);2.读写intgetc(FILE*fp);intputc(c,FILE*fp);3.关闭intfclose(FILE*fp);...
3、...北京航空航天大学数学与系统科学学院输入和输出文件访问标准错误输出行输入输出其他常用库函数打开文件.FILE*fopen(char*name,char*mode);name为文件名,可以包含路径mode为打开文件的模式"r"读"w"写,如果已存在则覆盖"a"追加,如果已存在则追加"b"二进制返回文件指针,如果错误返回NULL......北京航空航天大学数学与系统科学学院输入和输出文件访问标准错误输出行输入输出其他常用库函数文件逐字符读写.intgetc(FILE*fp);intputc(c,FILE*fp);返回读入
4、或者写入的字符如果读到文件结束或者遇到错误返回EOF......北京航空航天大学数学与系统科学学院输入和输出文件访问标准错误输出行输入输出其他常用库函数关闭文件.intfclose(FILE*fp);释放文件指针系统资源有限将缓存写入文件(fflush)程序正常退出也会自动执行fclose......北京航空航天大学数学与系统科学学院输入和输出文件访问标准错误输出行输入输出其他常用库函数最常使用的三个文件指针.stdin标准输入stdout标准输出stderr标准错误输出......北京航空航天大学数学与系统科学学院输入
5、和输出文件访问标准错误输出行输入输出其他常用库函数用宏定义getchar和putchar.#definegetchar()getc(stdin)#defineputchar(c)putc((c),stdout)......北京航空航天大学数学与系统科学学院输入和输出文件访问标准错误输出行输入输出其他常用库函数格式化输入输出.intfscanf(FILE*fp,char*format,...)intfprintf(FILE*fp,char*format,...)......北京航空航天大学数学与系统科学学院输入和输出文件访
6、问标准错误输出行输入输出其他常用库函数例程cat.#include/*cat:concatenatefiles,version1*/main(intargc,char*argv[]){FILE*fp;voidfilecopy(FILE*,FILE*)if(argc==1)/*noargs;copystandardinput*/filecopy(stdin,stdout);elsewhile(--argc>0)if((fp=fopen(*++argv,"r"))==NULL){printf("cat:ca
7、n'topen%s,*argv);return1;}else{filecopy(fp,stdout);fclose(fp);}return0;}......北京航空航天大学数学与系统科学学院输入和输出文件访问标准错误输出行输入输出其他常用库函数例程cat(续)./*filecopy:copyfileifptofileofp*/voidfilecopy(FILE*ifp,FILE*ofp){intc;while((c=getc(ifp))!=EOF)putc(c,ofp);}......北京航空航天大学数学与系统科学学
8、院输入和输出文件访问标准错误输出行输入输出其他常用库函数Outline.1.文件访问2.标准错误输出3.行输入输出4.其他常用库函数......北京航空航天大学数学与系统科学学院输入和输出文件访问标准错误输出行输入输出其他常用库函数为什么要有标准错误输出?.标准输出经常会被重定向到文件或者通过管道输出给其他程序而错误