头文件:#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 文件,包含如下的内容:
上面的代码中,格式化字符串被使用了两次: