c语言 格式化文件输入输出

来源:互联网 发布:tensorflow 安装 编辑:程序博客网 时间:2024/05/17 06:11

已经对普通的格式化输入输出函数scanf和printf很熟悉了,格式化文件输入输出函数是在两个函数名前加f,表明“读写对象是磁盘文件而不是键盘和显示器”。
两个函数的原型为:
int fprintf(FILE , const char , …);
int fscanf(FILE , const char , …);
fprintf和fscanf与普通的printf和scanf用法几乎一致,唯一的不同在于多了第一个参数—文件指针,用以标识输入的源文件或输出的目的文件。
当输入输出正确时,两个函数返回正确处理的字符数,当出错或遇到文件尾时,返回EOF(-1)。

格式化I/O:fprintf与fscanf
函数原型:
int fprintf(FILE *fp,const char *format[,argument,…])
int fscanf(FILE *fp,const char *format[,address,…])
功能:按格式对文件进行I/O操作
返值:成功,返回I/O的个数;出错或文件尾,返回EOF

例 fprintf(fp,“%d,%6.2f”,i,t); //将i和t按%d,%6.2f格式输出到fp文件
fscanf(fp,“%d,%f”,&i,&t); //若文件中有3,4.5 ,则将3送入i, 4.5送入t

例 从键盘按格式输入数据存到磁盘文件中去

#include <stdio.h>main(){ char s[80],c[80];   int a,b;   FILE *fp;   if((fp=fopen("test","w"))==NULL)   {   puts("can't open file");   exit() ;   }   fscanf(stdin,"%s%d",s,&a);/*read from keaboard*/   fprintf(fp,"%s  %d",s,a);/*write to file*/   fclose(fp);   if((fp=fopen("test","r"))==NULL)   {   puts("can't open file"); exit();   }   fscanf(fp,"%s%d",c,&b);/*read from file*/   fprintf(stdout,"%s %d",c,b);/*print to screen*/   fclose(fp);}
0 0
原创粉丝点击