C clearerr () - C Τυπική βιβλιοθήκη

Η λειτουργία clearerr () διαγράφει το τέλος του αρχείου και τις ενδείξεις σφάλματος για τη δεδομένη ροή.

Στον προγραμματισμό C, το clearerr () διαγράφει το τέλος του αρχείου και τις ενδείξεις σφάλματος για τη δεδομένη ροή.

Η clearerr()συνάρτηση ορίζεται στο αρχείο κεφαλίδας.

C clearerr () Πρωτότυπο

 void clearerr (ροή FILE *).

Η συνάρτηση clearerr () παίρνει μια παράμετρο που είναι ο δείκτης σε ένα αντικείμενο FILE που προσδιορίζει τη ροή.

Η συνάρτηση δεν επιστρέφει καμία τιμή.

Παράδειγμα: Συνάρτηση C clearerr ()

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

Παραγωγή

 Σφάλμα κατά την εγγραφή στο myfile.txt Δεν υπάρχουν σφάλματα κατά την ανάγνωση του myfile.txt 

Αυτό το πρόγραμμα ανοίγει ένα υπάρχον αρχείο που καλείται myfile.txtγια ανάγνωση.

Τώρα, η συνάρτηση fputc()προσπαθεί να γράψει στο αρχείο. Δεδομένου ότι η εγγραφή δεν επιτρέπεται σε κατάσταση ανάγνωσης, προκαλεί σφάλμα I / O.

Ωστόσο, αυτό το σφάλμα διαγράφεται χρησιμοποιώντας clearerr(). Έτσι, όταν πραγματοποιείται ο επόμενος έλεγχος σφαλμάτων ferror(), δείχνει ότι δεν βρέθηκαν σφάλματα.

ενδιαφέροντα άρθρα...