C语言中的fprintf()函数和fscanf()函数是用于文件输入输出的函数,它们分别用于将格式化的数据写入文件和从文件中读取格式化的数据,下面将详细介绍这两个函数的使用方法。
fprintf()函数
fprintf()函数用于将格式化的数据写入文件,它的原型如下:
int fprintf(FILE *stream, const char *format, ...);
参数说明:
stream:指向一个文件流的指针,用于指定要写入的文件。
format:一个字符串,用于指定输出数据的格式。
...:可变参数列表,用于传递要输出的数据。
返回值:成功写入的字符数,如果失败则返回负值。
使用示例:
include <stdio.h> int main() { FILE *file = fopen("output.txt", "w"); if (file == NULL) { printf("无法打开文件! "); return 1; } int num = 123; float price = 45.67; char name[] = "张三"; fprintf(file, "数字:%d,价格:%.2f,姓名:%s", num, price, name); fclose(file); return 0; }
fscanf()函数
fscanf()函数用于从文件中读取格式化的数据,它的原型如下:
int fscanf(FILE *stream, const char *format, ...);
参数说明:
stream:指向一个文件流的指针,用于指定要读取的文件。
format:一个字符串,用于指定输入数据的格式。
...:可变参数列表,用于接收读取到的数据。
返回值:成功读取并赋值的变量个数,如果到达文件末尾或失败则返回EOF(通常是-1)。
使用示例:
include <stdio.h> int main() { FILE *file = fopen("input.txt", "r"); if (file == NULL) { printf("无法打开文件! "); return 1; } int num; float price; char name[20]; fscanf(file, "%d %f %s", &num, &price, name); printf("数字:%d,价格:%.2f,姓名:%s", num, price, name); fclose(file); return 0; }
注意事项
1、在使用fprintf()和fscanf()函数时,需要包含头文件<stdio.h>。
2、在使用这两个函数之前,需要先打开文件,使用fopen()函数,并在使用完毕后关闭文件,使用fclose()函数。
3、在格式化字符串中,可以使用一些特殊的格式控制符来指定数据的格式,d表示整数,%f表示浮点数,%s表示字符串等,具体可以参考C语言的格式化输出和输入相关文档。
4、在使用可变参数列表时,需要在参数前面加上省略号(...),并在调用函数时传递相应的参数,在函数内部,可以通过va_list和va_start等宏来获取和处理这些参数,具体可以参考C语言的可变参数列表相关文档。
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/228042.html