C语言中,如果简单的输出txt,或者dat文件,或者我们需要输出标准化格式化的的数据,那么我们就会需要这个函数,我在地球物理学专业课中实验课编程中,总会遇到这个函数,现在我就把收集来的信息分享一下。
fprintf是C/C++中的一个格式化写—库函数,位于头文件<stdio.h>中,其作用是格式化输 出到一个流/文件中;函数原型为int fprintf( FILE *stream, const char *format, [ argument ]...),fprintf()函数根据指定的格式(format)向输出流(stream)写入数据(argument)。
定义
int fprintf (FILE* stream, const char*format, [argument])
FILE*stream:文件指针
const char* format:输出格式
[argument]:附加参数列表
用 法
#include <stdio.h>
#include<stdlib.h>
int fprintf( FILE *stream, const char *format, ... );
fprintf()函数根据指定的format(格式)发送信息(参数)到由stream(流)指定的文件. fprintf()只能和printf()一样工作. fprintf()的返回值是输出的字符数,发生错误时返回一个负值.
规定符
%d, %i 十进制有符号整数
%u 十进制无符号整数
%f 浮点数
%s 字符串
%c 单个字符
%p指针的值
%e, %E 指数形式的浮点数
%x无符号以小写十六进制表示的整数
%X 无符号以大写十六进制表示的整数
%o 无符号以八进制表示的整数
%g 自动选择合适的表示法
当然,fprintf必须是配合fopen使用的,下边提供几段代码。
int main()
{
FILE* fp;
int i = 617;
char* s = "that is a good new";
fp = fopen("text.dat", "w");
fputs("total", fp);
fputs(":", fp);
fprintf(fp, "%d\n", i);
fprintf(fp, "%s", s);
fclose(fp);
return 0;
}
{
FILE* fp;
int i = 617;
char* s = "that is a good new";
fp = fopen("text.dat", "w");
fputs("total", fp);
fputs(":", fp);
fprintf(fp, "%d\n", i);
fprintf(fp, "%s", s);
fclose(fp);
return 0;
}
输出至文件text.dat:
total:617
文章评论