#include <stdio.h>
#include <stdlib.h>
void WriteFile(FILE *p);
void ReadFile(FILE *p);
int main(int argc, char *argv[])
{
FILE *fp;
//一个文件指针
char inputfile[20];
//一个字符串数组
printf("请输入打开的文件名字\n");
scanf("%s",inputfile);
//写入字符串
fp=fopen(inputfile,"w+");
//打开一个文件,返回值给fp(我想这个返回值是一个地址)
WriteFile(fp);
ReadFile(fp);
fclose(fp);
system("PAUSE");
return 0;
}
void WriteFile(FILE *p)
{char ch;
printf("输入写入的字符,以#号结尾\n");
while((ch=getchar())!='#')
//getchar()从键盘读入字符
{fputc(ch,p);// fputc(ch,p) 像文件p里写入字符ch
}
rewind(p); //指针移到文件的头部
}
void ReadFile(FILE *p)
{char ch;
printf("读出文件的内容\n");
ch=fgetc(p); //fgetc从文件中读取字符
while(ch!=EOF)//判断字符 是否为结束符 EOF
{putchar(ch); //显示字符 ch
ch=fgetc(p); //为什么要加这个语句 我不明白
}
}
运行结果:
注意的是:
在写入文件内容时,“w+”会覆盖掉已经存在的文件中的内容
如果文件不存在 会创建一个 相应名字的文件