Ferror -funksjon på C -språk

Ferror -funksjon på C -språk
Det er vanlig at vi kan lese og skrive filene med koden vår, da dette er et kraftig verktøy som lar oss lagre eller få tilgang til alle typer data som vi tidligere lagret på datamaskinen

Foreløpig er det utallige typer filer, fra regneark eller databaser, opprettet av brukeren til systemfiler som tillater drift av OS eller andre programmer.

God filhåndtering forbedrer integriteten til dataene deres. Derfor er det viktig å åpne, redigere og lukke dem på riktig måte, og å oppdage når feil oppstår under disse operasjonene.

I dette Linux hint Artikkel om C -språket, vi vil forklare hvordan du bruker Ferror () Funksjon for å oppdage filadministrasjonsfeilene. Vi vil se på syntaks for denne funksjonen, inngangs- og utgangsargumentene som brukes, og den aksepterte datatypen. Deretter vil vi se på implementeringen av denne funksjonen sammen med andre komplementære funksjoner og vise trinnvis prosess for hvordan du håndterer filene og hvordan du bruker Ferror () riktig ved hjelp av kodefragmenter og bilder.

Syntaks av Ferror () -funksjonen på C -språket

int feil Ferror (fil * f_ptr);

Ferror () Funksjonsbeskrivelse på C -språket

De Ferror () Funksjonsspørsmål Feilflagget som er tilknyttet filen referert av f_ptr I sitt innspill argument.

Hvis ikke feilen oppstår, returneres “0” feil. Hvis feilflagget er aktivt, Ferror () returnerer et positivt resultat som er større enn null. Hvis feilflagget er aktivt, må det deaktiveres igjen med ClearerR () -funksjonen. Ellers forblir den i den tilstanden til applikasjonen som åpnet filen er lukket.

De Ferror () er en del av standardinngangs-/utgangsbiblioteket og er definert i “STDIO.h ”header. For å bruke denne ressursen, må vi inkludere den i kodefilen vår som følger:

#inkludere

En gang “stdio.H ”-overskrift er inkludert, vi kan bruke alle filhåndteringsfunksjonene som vi vil se i neste avsnitt.

Hvordan bruke Ferror () -funksjonen i C -programmeringsspråket for å sjekke om det oppstår en feil mens du behandler en fil

I dette eksemplet vil vi vise deg trinn-for-trinn-prosessen for hvordan du bruker Ferror () -funksjonen for å sjekke om det oppstår en feil mens du behandler en fil. For å gjøre dette oppretter vi koden som bruker de forskjellige funksjonene for å åpne, lukke og lese filene og bruke Ferror () funksjon for å sjekke om det ikke oppsto feil.

Filen som vi vil bruke i dette eksemplet er det vi tidligere har laget i “Dokumenter” under “LH -eksemplet.txt ”navn og skriv et fragment av Einstein i det.

Det første trinnet er å definere f_ptr peker for filen vi bruker. Denne pekeren er utgangsargumentet for fopen () og inngangsargumentet for Ferror () og de andre filbehandlingsfunksjonene vi bruker. Følgende utdrag viser definisjonen av f_ptr og åpner filen med fopen ():

#inkludere
#inkludere
tomrom ()

Fil *f_ptr;
char buffer [250];
F_PTR = FOPEN ("Dokumenter/LH -eksempel.txt "," r ");
Fread (buffer, 120, 1, f_ptr);
printf ("%s", buffer);
if (ferror (f_ptr) == 0)
printf ("Filen ble lest med hell \ n");
fClose (F_PTR);

Etter å ha åpnet filen, leser den innholdet og ringer Ferror () funksjon i hvis betingelse for å sjekke statusen til dette flagget. Hvis filen leses vellykket, returnerer den “0” som resultat. Så programmet faller inn i IF -tilstanden og viser følgende melding i kommandokonsollen, "Filen ble lest vellykket". Deretter lukker vi filen med fclose () -funksjonen.

Feil returnert av filbehandlingsfunksjoner på C -språket

I denne delen vil vi se på hvordan du kan oppdage feilene i de forskjellige filbehandlingsfunksjonene.

Fopen () -funksjonen returnerer “0” hvis den spesifiserte filen i banen til inngangsargumentet ikke kunne åpnes. Dette kan skyldes forskjellige feil som filen som ikke eksisterer i den spesifiserte banen eller brukes av et annet program. FClose () -funksjonen returnerer “0” hvis filen er vellykket lukket. Et ikke-null nummer returneres hvis en feil oppstår.

I det følgende eksemplet bruker vi forrige utdrag og bruker disse feilreturene for å bekrefte at filen er vellykket åpnet og lukket:

#inkludere
#inkludere
tomrom ()

Fil *f_ptr;
char buffer [250];
F_PTR = FOPEN ("Dokumenter/LH -eksempel.txt "," r ");
if (f_ptr != 0);
printf ("Filen var åpen med suksess \ n");
Fread (buffer, 120, 1, f_ptr);
printf ("%s", buffer);
if (ferror (f_ptr) == 0)
printf ("Filen ble lest med hell \ n");
if (fClose (f_ptr) == 0);
printf ("Filen var nær vellykket \ n");

Følgende bilde viser resultatene fra hvert av trinnene som utføres for å åpne, lese og lukke filen:

Konklusjon

I dette Linux hint artikkel, vi viste deg hvordan du bruker Ferror () Funksjon for å oppdage filbehandlingsfeil. Vi så på den teoretiske delen av denne funksjonen og brukte den i et praktisk eksempel for å vise deg hvordan du kan oppdage en lesefeil. Vi forklarte også hvordan du kan oppdage feilene i de komplementære funksjonene for å åpne og lukke filene ved å bruke FOPEN () og FCLOSE (). Vi håper at du fant denne artikkelen nyttig. For flere artikler som dette, bruk søkemotoren vår.