C clearerr () - C Standard Library

De functie clearerr () wist het einde van het bestand en foutindicatoren voor de gegeven stream.

In C-programmering wist clearerr () de end-of-file en foutindicatoren voor de gegeven stream.

De clearerr()functie is gedefinieerd in het header-bestand.

C clearerr () Prototype

 void clearerr (FILE * stream);

Functie clearerr () neemt één parameter die de pointer is naar een FILE-object dat de stream identificeert.

De functie retourneert geen enkele waarde.

Voorbeeld: C clearerr () functie

 #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; ) 

Uitvoer

 Fout bij schrijven naar myfile.txt Geen fouten bij het lezen van myfile.txt 

Dit programma opent een bestaand bestand dat moet worden myfile.txtgelezen.

Nu fputc()probeert de functie naar het bestand te schrijven. Aangezien schrijven niet is toegestaan ​​in de leesmodus, veroorzaakt dit een I / O-fout.

Deze fout wordt echter gewist met clearerr(). Dus wanneer de volgende foutcontrole plaatsvindt in de ferror()functie, wordt weergegeven dat er geen fouten zijn gevonden.

Interessante artikelen...