Hàm clearerr() trong C
Hàm void clearerr(FILE *stream) trong Thư viện C xóa end-of-file và error indicator cho Stream đã cho.
Khai báo hàm clearerr() trong C
Dưới đây là phần khai báo cho hàm clearerr() trong C:
void clearerr(FILE *stream)
Tham số
stream − Đây là con trỏ tới một đối tượng FILE mà nhận diện Stream.
Trả về giá trị
Hàm này nên thất bại và không thiết lập biến ngoại vi errno nhưng trong trường hợp nó phát hiện rằng các tham số của nó không là một stream hợp lệ, nó phải trả về -1 và thiết lập errno thành EBADF.
Ví dụ
Chương trình C sau minh họa cách sử dụng của hàm clearerr() trong C:
#include <stdio.h> int main() { FILE *fp; char c; fp = fopen("baitapc.txt", "w"); c = fgetc(fp); if( ferror(fp) ) { printf("Da xay ra loi trong khi doc baitapc.txt\n"); } clearerr(fp); if( ferror(fp) ) { printf("Da xay ra loi trong khi doc baitapc.txt\n"); } fclose(fp); return(0); }
Giả sử chúng ta có một text file có tên là baitapc.txt, là một file trống. Biên dịch và chạy chương trình này sẽ cho kết quả như sau. Bởi vì chúng ta cố gắng đọc một file mà đã mở trong chế độ chỉ ghi (write only).
Theo Tutorialspoint
Bài trước: Hàm fclose() trong C
Bài tiếp: Hàm feof() trong C

-
Cách thiết lập máy in mặc định trên Windows 10
-
Cách để Calculator luôn nổi phía trên các ứng dụng Windows 10
-
Cách khắc phục lỗi tổ hợp phím Windows + Space không hoạt động
-
Đã đến lúc nên từ bỏ Facebook Messenger
-
Cách bật lời nhắc tắt nhiều tab trên Microsoft Edge
-
Cách xem lịch âm dương trên máy tính Windows 10
- Ngôn ngữ lập trình C là gì?
- Hướng dẫn cài đặt C
- Cấu trúc chương trình C cơ bản
- Cú pháp cơ bản
- Kiểu dữ liệu
- Biến trong C
- Hằng số
- Lớp lưu trữ
- Các toán tử
- Điều khiển luồng
- Vòng lặp
-
Các hàm trong C
- abort()
- abs()
- atexit()
- atof()
- atoi()
- atol()
- bsearch()
- calloc()
- clearerr()
- ldiv()
- exit()
- fclose()
- feof()
- ferror()
- fflush()
- fgetc()
- fgetpos()
- fgets()
- fopen()
- fprintf()
- fputc()
- fputs()
- fread()
- free()
- freopen()
- fscanf()
- fseek()
- fsetpos()
- ftell()
- fwrite()
- getc()
- getchar()
- getenv()
- gets()
- labs()
- labs()
- malloc()
- mblen()
- mbstowcs()
- mbtowc()
- memchr()
- memcmp()
- memcpy()
- memset()
- perror()
- printf()
- putc()
- putchar()
- puts()
- qsort()
- raise()
- rand()
- realloc()
- remove()
- rename()
- rewind()
- scanf()
- setbuf()
- setvbuf()
- signal()
- sprintf()
- srand()
- sscanf()
- strchr()
- strcmp()
- strcoll()
- strcpy()
- strcspn()
- strerror()
- strlen()
- strncat()
- strncmp()
- strncat()
- strncpy()
- strpbrk()
- strrchr()
- strspn()
- strstr()
- strtod()
- strtok()
- strtol()
- strtod()
- strtoul()
- strxfrm()
- system()
- tmpfile()
- tmpnam()
- ungetc()
- vfprintf()
- vsprintf()
- wcstombs()
- wctomb()
- Quy tắc phạm vi
- Mảng
- Con trỏ
- Chuỗi
- Cấu trúc (Structure)
- Union trong C
- Bit Field
- Typedef
- Input & Output
- Đọc và ghi file
- Bộ tiền xử lý
- Header File
- Ép kiểu
- Xử lý lỗi
- Đệ quy
- Tham số biến
- Quản lý bộ nhớ
- Tham số dòng lệnh
- Thư viện C