C clearr () - Thư viện chuẩn C

Hàm clearr () xóa các chỉ báo lỗi và phần cuối của tệp cho luồng nhất định.

Trong lập trình C, clearr () xóa các chỉ báo lỗi và kết thúc tệp cho luồng đã cho.

Các clearerr()chức năng được xác định trong tập tin tiêu đề.

C clearr () Nguyên mẫu

 void clearr (FILE * stream);

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

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

Ví dụ: hàm C clearr ()

 #include int main () ( FILE * pFile; pFile = fopen("myfile.txt","r"); if (pFile == NULL) perror ("Error opening file"); else ( fputc('x', pFile); if(ferror(pFile)) ( printf("Error Writing to myfile.txt"); clearerr(pFile); ) fgetc(pFile); if (!ferror(pFile)) printf("No errors reading myfile.txt"); fclose(pFile); ) return 0; ) 

Đầu ra

 Lỗi ghi vào myfile.txt Không có lỗi khi đọc myfile.txt 

Chương trình này mở một tệp hiện có được gọi myfile.txtđể đọc.

Bây giờ, hàm fputc()cố gắng ghi vào tệp. Vì không được phép ghi ở chế độ đọc, nó gây ra lỗi I / O.

Tuy nhiên, lỗi này được xóa bằng cách sử dụng clearerr(). Vì vậy, khi kiểm tra lỗi tiếp theo xảy ra trong ferror()chức năng, nó sẽ hiển thị rằng không tìm thấy lỗi nào.

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