1. Định nghĩa hàm fgets() trong C

Hàm fgets() trong C được sử dụng để đọc từng dòng trong file C. Hàm fgets() sẽ đọc đến ký tự cuối cùng trong từng dòng của file rồi mới chuyển sang dòng tiếp theo, cho tới khi hết file cần đọc. Để khai báo hàm fgets() trong C, ta sẽ cần sử dụng cú pháp như sau:

char *fgets(char *str, int n, FILE *stream)

Tham số:

  • str: Con trỏ tới mảng.
  • stream: con trỏ tới đối tượng file.
  • n: Số ký tự tối đa được đọc.

Lưu ý:

  • Hàm fgets() sẽ trả về con trỏ của chuỗi ký tự chứa kết quả đọc file nếu đọc file thành công.
  • Hàm fgets() sẽ trả về giá trị NULL nếu đọc file thất bại.

2. Ví dụ về hàm fgets() trong C

Ví dụ dưới đây, sử dụng hàm fgets() để đọc từng dòng trong file C:

#include <stdio.h>

int main() {
    FILE *fptr;
char str[100];

//    mo file de doc
fptr = fopen("fgets.txt", "r");
if (fptr == NULL) {
perror("Co loi xay ra khi mo file!");
return-1;
}
else {
if (fgets(str, 100, fptr) !=NULL){
puts(str);
   }
fclose(fptr);
}
return 0;
}

Trong ví dụ trên, hàm fgets() sẽ mở file fgets.txt, đọc 100-1 (99) ký tự đầu tiên và in ra màn hình.

Giả dụ nội dung của file fgets.txt là:

Laptrinhtudau

Đoạn mã trên sẽ được in ra màn hình:

Laptrinhtudau