Funzione Ferror in lingua C

Funzione Ferror in lingua C
È comune per noi leggere e scrivere i file con il nostro codice in quanto questo è uno strumento potente che ci consente di archiviare o accedere a qualsiasi tipo di dati che abbiamo precedentemente archiviato sul computer

Attualmente, esistono innumerevoli tipi di file, da fogli di calcolo o database, creati dall'utente ai file di sistema che consentono il funzionamento di OS o altri programmi.

Una buona gestione dei file migliora l'integrità dei loro dati. Pertanto, è importante aprire, modificarli e chiuderli nel modo corretto e rilevare quando si verificano errori durante queste operazioni.

In questo Suggerimento Linux Articolo sulla lingua C, spiegheremo come usare il Ferror () funzione per rilevare gli errori di gestione dei file. Esamineremo la sintassi di questa funzione, gli argomenti di input e output utilizzati e il tipo di dati accettato. Quindi, esamineremo l'implementazione di questa funzione insieme ad altre funzioni complementari e mostreremo il processo passo -passo su come gestire i file e come utilizzare Ferror () Utilizzo corretto di frammenti di codice e immagini.

Sintassi della funzione Ferror () nella lingua C

int Err Ferror (file * f_ptr);

Ferror () Descrizione della funzione in lingua C

IL Ferror () query della funzione Il flag di errore associato al file a cui si fa riferimento f_ptr Nel suo argomento di input.

Se si verifica l'errore non, "0" viene restituito in err. Se il flag di errore è attivo, Ferror () restituisce un risultato positivo che è maggiore di zero. Se il flag di errore è attivo, deve essere nuovamente disattivato con la funzione clearerr (). Altrimenti, rimane in quello stato fino a quando l'applicazione che ha aperto il file è chiusa.

IL Ferror () fa parte della libreria di input/output standard ed è definito in "stdio.H ”intestazione. Per utilizzare questa risorsa, dobbiamo includerla nel nostro file di codice come segue:

#includere

Una volta lo "stdio.”H” è inclusa l'intestazione, possiamo utilizzare tutte le funzionalità di gestione dei file che vedremo nella sezione successiva.

Come utilizzare la funzione Ferror () nel linguaggio di programmazione C per verificare se si verifica un errore durante l'elaborazione di un file

In questo esempio, ti mostreremo il processo passo-passo su come utilizzare la funzione Ferror () per verificare se si verifica un errore durante l'elaborazione di un file. Per fare ciò, creiamo il codice che utilizza le varie funzioni per aprire, chiudere e leggere i file e utilizzare il Ferror () funzione per verificare se non si sono verificati errori.

Il file che useremo in questo esempio è ciò che abbiamo creato in precedenza in "documenti" con "LH Esempio.txt ”nome e scrivi un frammento di einstein in esso.

Il primo passo è definire il f_ptr puntatore per il file che utilizziamo. Questo puntatore è l'argomento di output per fopen () e l'argomento input per Ferror () e le altre funzioni di elaborazione del file che utilizziamo. Il seguente frammento mostra la definizione di f_ptr e apre il file con fopen ():

#includere
#includere
void main ()

File *f_ptr;
Char Buffer [250];
f_ptr = fopen ("documenti/lh esempio.txt "," r ");
Fread (buffer, 120, 1, f_ptr);
printf ("%s", buffer);
if (ferror (f_ptr) == 0)
printf ("Il file è stato letto correttamente \ n");
fclose (f_ptr);

Dopo aver aperto il file, legge il suo contenuto e chiama il Ferror () funzione in Se condizione per verificare lo stato di questo flag. Se il file viene letto correttamente, restituisce "0" come risultato. Quindi, il programma rientra nella condizione IF e visualizza il seguente messaggio nella console di comando, "Il file è stato letto correttamente". Quindi, chiudiamo il file con la funzione fclose ().

Errori restituiti dalle funzioni di elaborazione dei file nella lingua C

In questa sezione, esamineremo come individuare gli errori nelle varie funzioni di elaborazione dei file.

La funzione fopen () restituisce “0” se il file specificato nel percorso dell'argomento di input non può essere aperto. Ciò può essere dovuto a vari errori come il file che non esiste nel percorso specificato o utilizzato da un altro programma. La funzione fclose () restituisce “0” se il file viene chiuso correttamente. Viene restituito un numero diverso da zero se si verifica un errore.

Nell'esempio seguente, utilizziamo lo snippet precedente e utilizziamo questi resti di errore per verificare che il file venga aperto e chiuso correttamente:

#includere
#includere
void main ()

File *f_ptr;
Char Buffer [250];
f_ptr = fopen ("documenti/lh esempio.txt "," r ");
if (f_ptr != 0);
printf ("Il file è stato aperto correttamente \ n");
Fread (buffer, 120, 1, f_ptr);
printf ("%s", buffer);
if (ferror (f_ptr) == 0)
printf ("Il file è stato letto correttamente \ n");
if (fclose (f_ptr) == 0);
printf ("Il file è stato vicino correttamente \ n");

La seguente immagine mostra i risultati di ciascuno dei passaggi eseguiti per aprire, leggere e chiudere il file:

Conclusione

In questo Suggerimento Linux Articolo, ti abbiamo mostrato come usare il Ferror () funzione per rilevare gli errori di elaborazione del file. Abbiamo esaminato la parte teorica di questa funzione e l'abbiamo applicata in un esempio pratico per mostrarti come rilevare un errore di lettura. Abbiamo anche spiegato come è possibile rilevare gli errori nelle funzioni complementari per aprire e chiudere i file usando Fopen () e FClose (). Speriamo che tu abbia trovato questo articolo utile. Per altri articoli come questo, usa il nostro motore di ricerca.