fputc:
#include <stdio.h>
int fputc(int c,FILE *stream);
将c写入文件stream
演示代码:
#include <stdio.h>
#include <string.h>
int main()
{
FILE *fp;
int i;
char *str="yangzeruihenshuai";
fp=fopen("./test.txt","w+");
for(i=0;i<strlen(str);i++){
fputc(*str,fp);
str++;
}
fclose(fp);
return 0;
}
运行结果:
文件内只写入了yangzerui,不完全
原因是for循环中的strlen(str)运算影响到str++运行
修正代码
#include <stdio.h>
#include <string.h>
int main()
{
FILE *fp;
int i;
char *str="yangzeruihenshuai";
int len=strlen(str);
fp=fopen("./test.txt","w+");
for(i=0;i<len;i++){
fputc(*str,fp);
str++;
}
fclose(fp);
return 0;
}
fgetc:将文件的字符读取出来
#include <stdio.h>
int fgetc(FILE *stream);
feof:判断文件的尾巴,返回值是int型
#include <stdio.h>
int feof(FILE *stream);
到达文件尾巴返回1,没到文件尾巴返回0
代码演示:
#include <stdio.h>
#include <string.h>
int main()
{
FILE *fp;
int i;
char c;
fp=fopen("./test.txt","r");
while(!feof(fp)){
c=fgetc(fp);
printf("%c",c);
}
fclose(fp);
return 0;
}