[b]几个函数[/b]:
[b]举个例子[/b],cat命令的实现:
[b]注意:[/b]
1、如果打开一个不存在的文件,模式是写或者追加的话,该文件会被创建;如果模式为读的话,会报错
2、写模式是覆盖原来的文件,追加是在原来文件内容的后面接着写入
FILE *fp;//定义一个文件类型的指针
FILE *fopen(char *filename,char *RWAmode);//访问文件,返回FILE类型的指针。参数从名字可以看出来,filename是文件名,RWAmode是访问方式:读(r)、写(w)、追加(a)
int getc(FILE *fp);//返回fp指向的输入流中的下一个字符
int putc(int c,FILE *fp);与上面相反,将字符c写入,并返回写入的字符;如果写入出错,则返回EOF
fclose(FILE *fp);与fopen相反,关闭文件。有两个作用,一是释放文件指针,二是清理缓冲区,在java中也有类似的情况
[b]举个例子[/b],cat命令的实现:
#include <stdio.h>
int main(int argc,char *argv[])
{
if(argc == 1){
printf("usage:cat filename\n");
return 0;
}
FILE *fp;
// filename is argv[1]
fp = fopen(argv[1],"r");
if(fp==NULL){
printf("read file error!\n");
return 1;
}
int c;
while((c=getc(fp))!=EOF){
putchar(c);
}
return 0;
}
[b]注意:[/b]
1、如果打开一个不存在的文件,模式是写或者追加的话,该文件会被创建;如果模式为读的话,会报错
2、写模式是覆盖原来的文件,追加是在原来文件内容的后面接着写入