Resets the error indicator for the stream.
Include
<stdio.h>
Prototype
void clearerr(FILE *stream);
Argument
stream |
stream to reset error indicators |
Remarks
The function clears the end-of-file and error indicators for the given stream (i.e.,
feof
and ferror
will return false after the
function clearerr
is called).
Example
/* This program tries to write to a file that is */
/* readonly. This causes the error indicator to */
/* be set. The function ferror is used to check */
/* the error indicator. The function clearerr is */
/* used to reset the error indicator so the next */
/* time ferror is called it will not report an */
/* error. */
#include <stdio.h> /* for ferror, clearerr, */
/* printf, fprintf, fopen,*/
/* fclose, FILE, NULL */
int main(void)
{
FILE *myfile;
if ((myfile = fopen("sampclearerr.c", "r")) ==
NULL)
printf("Cannot open file\n");
else
{
fprintf(myfile, "Write this line to the "
"file.\n");
if (ferror(myfile))
printf("Error\n");
else
printf("No error\n");
clearerr(myfile);
if (ferror(myfile))
printf("Still has Error\n");
else
printf("Error indicator reset\n");
fclose(myfile);
}
}
Example Output
Error
Error indicator reset