fscanf()函數是C語言中的庫函數,用于從文件中讀取格式化的輸入。它的用法類似于scanf()函數,但是它從文件中讀取輸入而不是從標準輸入中讀取輸入。
下面是fscanf()函數的基本用法:
int fscanf(FILE *stream, const char *format, ...);
其中,stream是指向要讀取的文件的指針,format是格式字符串,用于指定要讀取的數據的格式,…表示可選的參數,用于指定要讀取的數據的變量。
以下是一個簡單的例子,演示了如何使用fscanf()函數從文件中讀取整數:
#include <stdio.h>
int main() {
FILE *file = fopen("data.txt", "r");
int num;
if (file == NULL) {
printf("無法打開文件\n");
return 1;
}
fscanf(file, "%d", &num);
printf("讀取到的整數是:%d\n", num);
fclose(file);
return 0;
}
在上面的例子中,我們首先使用fopen()函數打開了一個名為data.txt的文件,并將其賦值給file指針。然后,我們使用fscanf()函數從文件中讀取一個整數,并將其存儲在變量num中。最后,我們使用printf()函數打印讀取到的整數。
需要注意的是,fscanf()函數在讀取數據時會根據格式字符串指定的格式進行解析,因此格式字符串應與文件中的數據格式相匹配,否則可能會導致讀取錯誤。
此外,還可以使用fscanf()函數讀取其他類型的數據,如浮點數、字符等,只需要相應地調整格式字符串和變量的類型即可。