7.5 文件访问
fopen函数用于打开文件,它返回一个指向FILE的指针。FILE *fopen(char *name, char *mode);
其实 name为文件名,mode为访问格式。如果打开一个不存在的文件并且以写或追加的方式,则文件将被创建。如果打开出现错误则返回NULL。
int getc(FILE *fp)
getc函数返回fp指向的输入流中的下个字符。如果达文件尾或出现错误,该函数将返回EOF。
int putc(int c, FILE *fp)
该函数将字符c写入到fp指向的文件中,并返回写入的字符。如果发生错误,则返回EOF。
启动一个C程序时,操作系统负责打开3个文件:标准输入,标准输出,标准错误。相应的指针分别为stdin,stdout,stderr。
对文件的格式输入或输出,可以使用函数fscanf和fprintf。
int fprintf(FILE *fp,char *format, …); int fscanf(FILE *fp,char *format, …);
7.6 错误处理
一般情况下,我们将程序中的错误信息输出到单独的通道中,通过用stderr与stdout区分。下面我们来看cat程序将命令行输入的文件名内的内容都打印到屏幕上。
/*cat程序用于连接多个文件*/ #include<stdio.h> #include<stdlib.h> int main(int argc,char **argv) { FILE *fp; while(--argc>0) { if((fp=fopen(*++argv,"r"))!=NULL) { filecopy(stdout