C ++ fgets () - Thư viện chuẩn C ++

Hàm fgets () trong C ++ đọc số ký tự tối đa được chỉ định từ luồng tệp nhất định.

nguyên mẫu fgets ()

 char * fgets (char * str, int count, FILE * stream);

Các fgets()chức năng đọc tối đa là count-1ký tự từ các dòng tập tin nhất định và lưu trữ chúng trong mảng trỏ đến bởi str.

Việc phân tích cú pháp tiếp tục cho đến khi kết thúc tệp xảy ra hoặc một ký tự dòng mới ( n) được tìm thấy. Mảng str cũng sẽ chứa ký tự dòng mới trong trường hợp nó được tìm thấy. Nếu không có lỗi xảy ra, một ký tự null được viết ở cuối str.

Nó được định nghĩa trong tệp tiêu đề.

fgets () Tham số

  • str: Con trỏ tới một mảng ký tự lưu trữ nội dung của tệp.
  • count: Số ký tự tối đa để viết.
  • stream: Dòng tệp để đọc các ký tự.

fgets () Giá trị trả về

  • Khi thành công, hàm fgets () trả về str và khi thất bại, nó trả về con trỏ null.
  • Nếu lỗi xảy ra do tình trạng tệp kết thúc, nó sẽ đặt eofchỉ báo. Trong trường hợp này, nội dung của str không bị thay đổi.
  • Nếu lỗi xảy ra do một số lỗi khác, nó sẽ đặt chỉ báo lỗi. Trong trường hợp này, nội dung của str là không xác định. Họ thậm chí có thể không bị chấm dứt.

Ví dụ: Cách hoạt động của hàm fgets ()

 #include #include using namespace std; int main() ( int count = 10; char str(10); FILE *fp; fp = fopen("file.txt","w+"); fputs("An example file", fp); fputs("Filename is file.txt", fp); rewind(fp); while(feof(fp) == 0) ( fgets(str,count,fp); cout << str << endl; ) fclose(fp); return 0; )

Khi bạn chạy chương trình, đầu ra có thể sẽ là:

 Một tệp exampl e Tên tệp là tệp.t xt

thú vị bài viết...