fgets函數是C語言中的輸入函數,用于從指定的文件流中讀取一行字符,并將其存儲到指定的字符數組中。
它的聲明如下:
char *fgets(char *str, int n, FILE *stream);
參數解釋:
fgets函數會讀取指定文件流中的字符,直到遇到換行符(包括換行符),或者讀取了n-1個字符,或者到達文件末尾為止。它將讀取的字符存儲到str指向的字符數組中,并在末尾添加’\0’作為字符串的結束標志。
fgets函數的返回值是一個指向str的指針,如果讀取成功,則返回str的值;如果讀取失敗(如到達文件末尾或發生錯誤),則返回NULL。
示例用法:
#include <stdio.h>
int main() {
char str[100];
FILE *file = fopen("example.txt", "r"); // 打開文件 example.txt 用于讀取
if (file != NULL) {
if (fgets(str, sizeof(str), file) != NULL) {
printf("讀取的內容:%s", str);
}
fclose(file); // 關閉文件
}
return 0;
}
以上示例代碼中,我們打開了一個名為 “example.txt” 的文件用于讀取。然后,使用fgets函數從文件中讀取一行內容并存儲到str字符數組中,最后將讀取的內容打印出來。注意,這里需要檢查文件是否成功打開(file != NULL)和fgets函數的返回值(是否為NULL),以確保讀取操作成功。
總結:fgets函數可以用于從文件中讀取一行字符,并將其存儲到字符數組中。它是C語言中常用的輸入函數之一。