C语言fprintf写文件

C语言fprintf写文件教程

C 语言 中,printf 函数可以将内存中的数据输出到标准输出,同时,fprintf 函数 可以实现按照特定的格式将数据写入到 文件 中。

C语言fprintf函数详解

语法

int fprintf(FILE *fp, char * format, ...);

参数

参数 描述
fp 文件指针。
format 格式控制字符串。
参数列表。

返回值

fprintf() 返回成功写入的字符的个数,失败则返回负数。

头文件

fprintf 函数在 stdio.h 的头文件里面。

案例

按特定格式写入文件

使用 fprintf 函数按照特定格式写入内容到文件

#include <stdio.h> #include <stdlib.h> struct Student { char name[10]; int age; float score; }; int main() { printf("嗨客网(www.haicoder.net)\n\n"); // 定义结构体 struct Student students[3]; // 输入学生信息 int i = 0; for(i = 0; i < 3; i++) { printf("Please input student %d name, age and score: ", i+1); scanf("%s", students[i].name); scanf("%d", &students[i].age); scanf("%f", &students[i].score); } // 打开文件 FILE *fp = NULL; if ( (fp = fopen("c:\\haicoder.txt", "wt+")) == NULL ) { puts("Open file failed\n"); return; } // 写入文件 i = 0; for(i = 0; i < 3; i++) { fprintf(fp, "%s %d %f", students[i].name, students[i].age, students[i].score); } puts("Write file success"); fclose(fp); return 0; }

程序运行后,控制台输出如下:

19_c语言fprintf写文件.png

我们首先,定义了一个 Student 结构体,该结构体有三个成员,分别为一个 字符串 类型的 name,一个 int 类型 的 age,和一个 float 类型 的 score。

接着,我们定义了一个结构体 数组,该数组有三个成员,我们使用了 for 循环 加上 scanf 函数输入了结构体信息,同时,我们使用了 fopen 函数打开了文件,并使用 fprintf 将结构体数组写入到文件中。

此时,我们打开文件,可以看到,文件中写入的内容是我们完全可以看得懂的字符串形式。

C语言fprintf写文件总结

在 C 语言中,printf 函数可以将内存中的数据输出到标准输出,同时,fprintf 函数可以实现按照特定的格式将数据写入到文件中。