一、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文件中的整型、浮點型和字元型數據並存入對應變數中。
原創文章,作者:YPST,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/146114.html