头文件:#include <stdio.h>
fprintf()用于将格式化数据输出到文件流,其原型为:
int fprintf(FILE * stream, char * format, ...);
fprintf()会根据参数format 字符串来转换并格式化数据,然后将结果输出到参数stream 指定的文件中,直到出现字符串结束('\0')为止。
关于 format 的更多内容请参考 printf() 函数。
【返回值】成功则返回写入的字符数目。如果发生写入错误,将会设置文件错误标志(可通过 ferror() 检测),并返回一个负数。
如果在写入宽字符时一个多字节的字符发生编码错误,那么 errno 将被设置为 EILSEQ,并返回一个负数。
【实例】下面的代码将会提示用户输入姓名,然后写入到myfile.txt。
#include <stdio.h>
int main ()
{
FILE * pFile;
int n;
char name [100];
pFile = fopen ("myfile.txt","w");
for (n=0 ; n<3 ; n++)
{
puts ("please, enter a name: ");
gets (name);
fprintf (pFile, "Name %d [%-10.10s]\n",n,name);
}
fclose (pFile);
return 0;
}
运行程序,打开 myfile.txt 文件,包含如下的内容:
上面的代码中,格式化字符串被使用了两次: