一、fscanf函数简介
fscanf函数是C语言中一个常用的文件读取函数,可以读取文件中的各种数据类型,包括整型、浮点型、字符型等。在C++中也可以使用fscanf函数进行文件读取,方便高效。下面是fscanf函数的定义:
int fscanf(FILE * stream, const char * format, ...);
其中,第一个参数stream表示待读取的文件指针,第二个参数format表示读取格式,后面跟着的省略号表示需要读取的变量。fscanf函数读取到的数据会存入对应变量中。
二、使用fscanf读取整型数据
我们可以通过下面的代码使用fscanf函数读取一个文件中的整型数据:
#include <stdio.h> int main() { int num; FILE * fp = fopen("test.txt", "r"); fscanf(fp, "%d", &num); fclose(fp); return 0; }
上述代码中,先定义了一个整型变量num,然后打开文件test.txt并使用fscanf函数读取文件中的整型数据,最后关闭文件。该代码可以读取test.txt文件中的第一个整型数据并存入num变量中。
三、使用fscanf读取字符串数据
如果我们需要读取文件中的字符串,可以使用下面的代码:
#include <stdio.h> int main() { char str[100]; FILE * fp = fopen("test.txt", "r"); fscanf(fp, "%s", str); fclose(fp); return 0; }
上述代码中,先定义了一个字符型数组str来存储读取到的字符串,然后使用fscanf函数读取文件中的字符串,最后关闭文件。该代码可以读取test.txt文件中的第一个字符串并存入str数组中。
四、使用fscanf读取浮点型数据
同样地,我们也可以使用fscanf函数读取文件中的浮点型数据,如下所示:
#include <stdio.h> int main() { float f; FILE * fp = fopen("test.txt", "r"); fscanf(fp, "%f", &f); fclose(fp); return 0; }
上述代码中,先定义了一个浮点型变量f,然后使用fscanf函数读取文件中的浮点型数据,最后关闭文件。该代码可以读取test.txt文件中的第一个浮点型数据并存入f变量中。
五、使用fscanf读取多个数据
如果需要读取文件中的多个数据,我们可以在fscanf函数的第二个参数中设置多个读取格式,如下所示:
#include <stdio.h> int main() { int a; float b; char c; FILE * fp = fopen("test.txt", "r"); fscanf(fp, "%d %f %c", &a, &b, &c); fclose(fp); return 0; }
上述代码中,先定义了一个整型变量a、一个浮点型变量b和一个字符型变量c,然后使用fscanf函数读取文件中的三个数据,最后关闭文件。该代码可以依次读取test.txt文件中的整型、浮点型和字符型数据并存入对应变量中。