一、格式化输出
int fprintf(FILE *stream, const char *fmt, …);
int sprintf(char *s, const char *fmt, …);
成功时返回输出的字符个数;出错时返回EOF
二、格式化输入
int fscanf(FILE *stream, const char *format, ...);
int sscanf(const char *str, const char *format, ...);
#include "stdio.h"
int main(int argc,char *argv[]){
FILE *fp;
int year=2021;
int month=10;
int day=1;
fp=fopen("ftest.txt","w");
if(fp==NULL){
perror("fopen");
return 0;
}
fprintf(fp,"%d-%d-%d\n",year,month,day);
fclose(fp);
}
#include "stdio.h"
int main(int argc,char *argv[]){
char buf[100]={0};
int year=2021;
int month= 10;
int day=1;
int syear;
int smonth;
int sday;
sprintf(buf,"%d-%d-%d",year,month,day);
printf("%s\n",buf);
sscanf(buf,"%d-%d-%d",&syear,&smonth,&sday);
printf("%d,%d,%d\n",syear,smonth,sday);
}
#include "stdio.h"
int main(int argc,char *argv[]){
FILE *fp;
int year;
int month;
int day;
fp=fopen("ftest.txt","w");
if(fp==NULL){
perror("fopen");
return 0;
}
fscanf(fp,"%d-%d-%d\n",&year,&month,&day);//从文件中读取
printf("%d,%d,%d\n",year,month,day);
fclose(fp);
}
三、作业
格式化输入输出用到了哪些函数?分别有什么作用?
1.输出
int fprintf(FILE *stream, const char *fmt, …); //信息输出到指定的文件
int sprintf(char *s, const char *fmt, …); //把格式化的数据写入某个字符串
2.输入
int fscanf(FILE *stream, const char *format, ...); //读入文件中数据
int sscanf(const char *str, const char *format, ...); //从字符串中读取格式化数据