Home > C / C++ > Các hàm C / C++ > Hàm clearerr() trong C / C++

Hàm clearerr() trong C / C++

Trong bài viết này chúng ta sẽ tìm hiểu về hàm clearerr() trong C / C++. Đây là một hàm được sử dụng để báo lỗi cho Stream (luồng).

Hàm clearerr() là hàm có sẵn trong thư viện cstdio, vì vậy trước khi sử dụng nó các bạn nhớ khai báo thư viện đã nhé: #include<cstdio>.

Cú pháp hàm clearerr() trong C / C++

Trong lập trình C, hàm clearerr() được sử dụng để xóa end-of-file (phần cuối của file) và chỉ, báo lỗi cho Stream (luồng) đã cho.

Hàm clearr () nhận một tham số là con trỏ đến một đối tượng FILE để xác định luồng.

Cú pháp:

void clearerr(FILE *stream);

Trong đó:

  • stream là một con trỏ đến File cần xác định stream.

Hàm không trả về bất kỳ giá trị nào.

Ví dụ:

clearerr("file.txt");

Cách dùng hàm clearerr() trong C / C++

Trong phần này mình sẽ thực hiện một ví dụ minh họa cho cách sử dụng hàm clearerr().

#include <iostream>
#include <cstdio>
using namespace std;

int main() {
  int ch;
  FILE* fp;
  //tạo một file mới tên là file.txt để ghi nội dung
  fp = fopen("file.txt","w");
  //nếu có lỗi thì in ra thông báo
  if(fp)
  {
      ch = getc(fp);
      if(ferror(fp))
      {
          cout << "Đã xảy ra lỗi" << endl;
          //sử dụng hàm clearerr() để chỉ ra lỗi
          clearerr (fp);
      }
  }
  //nếu không có lỗi thì thông báo cho người dùng
  if(!ferror(fp))
      cout << "Đã đặt lại lỗi";
  fclose (fp);

  cout<<"\n----------------------------------\n";
  cout<<"Chương trình này được đăng tại Freetuts.net";
}

Kết quả:

clearerr 01 PNG

Như vậy là chúng ta đã tìm hiểu xong hàm clearerr() trong C / C++. Ở các bài tiếp theo mình sẽ tiếp tục giới thiệu các hàm khác trong thư viện cstdio, các bạn chú ý theo dõi nhé !!!

Bình luận đã đóng, nếu có thắc mắc hãy đặt câu hỏi tại hoicode.com để admin trả lời.

Nguồn: freetuts.net

Danh sách các hàm
Hàm clearerr() trong C / C++
Hàm fclose() trong C / C++
Hàm getc() trong C / C++
Hàm getchar() trong C / C++
Hàm gets() trong C / C++
Hàm printf() trong C / C++
Hàm putc() trong C / C++
Hàm fopen() trong C / C++
Hàm putchar() trong C / C++
Hàm puts() trong C / C++
Hàm scanf() trong C / C++

BÀI VIẾT

notice png LIST home png HOME hot gif BÁO
LỖI
top png TOP