Les 2 C -funksjon

Les 2 C -funksjon
"Du har kanskje hørt om konseptet" systemanrop "i programmering. En systemanrop er en anleggssamtale sendt av en kode til Linux -kjernen. Tjenesten er vanligvis en samtale som ensom kjernen kan gjøre, for eksempel å utføre input og output -operasjoner. Et skript brukte lesesystemanropet i klassisk POSIX -kompatibelt OS for å skaffe data ut av en fil lagret i en datastruktur. Dokumentet definerer en filidentifikator som normalt er tilgjengelig via en tidligere samtale for å åpne. Lessystemanropet analyserer dataene fra filen i byte og nummeret som er spesifisert av den som ringer og lagrer dem i et minne gitt av det påkallingssystemet.”

Innenfor denne guiden i dag vil vi bruke "Les" 2 C -funksjonen for å lese data fra en fil. La oss komme i gang med artikkelen nå. For det første har vi beveget oss innenfor katalogen "SRC" ved hjelp av "CD" -spørsmålet med filnavnet. Mens vi bruker listen "LS" -instruksjon i "SRC" -katalogen til Kali Linux, har vi fått vite at den bare inneholder en enkelt fil i den, i.e., “LKN_Example.”

La oss opprette en ny C -fil i "SRC" -mappen der vi for tiden jobber i. For dette kan du prøve å bruke "Touch" -instruksjonen til å opprette en og åpne den spesielle filen i Nano -redigereren ved å bruke "Nano" -instruksjonen med navnet på en fil i Kali Linux Shell. Annet enn det kan du prøve ut "Vim" -instruksjonen. "Vim" -instruksjonen kan la deg opprette og automatisk åpne C -filen i “Vim” -redigereren. Vi har navngitt det “Readfile” med “C” -forlengelsen på slutten, som vist i det vedlagte bildet nedenfor.

Vår nyopprettede C -fil “Readfile.C ”er automatisk åpnet i VIM -redigereren som en tom fil. Nå kan vi begynne å lage C -kode i den. Skriv ut den viste beløpskoden i filen din for utførelse. La oss se på denne koden nå. Denne koden er startet med de viktigste C -standardbibliotekene, som kreves for å kjøre denne koden jevnt på vår slutt. Etter dette har vi dekket dette eksemplet med den enkle Main () -metoden til C -språket. Vi har initialisert to variabler, Filedescriptor og størrelse, som skal brukes i den videre koden. Calloc () -funksjonen brukes til å tilordne minne med 100 tegn til karakterpekeren “C.”Filbeskrivelsesvariabelen har benyttet seg av Open () -funksjonen for å åpne“ noen FILE.txt ”fra den gjeldende arbeidskatalogen med det skrivebeskyttede alternativet, i.e., “O_rdonly.”

Hvis filbeskrivelsesverdien går mindre enn 0, i.e., Filen ikke åpnet, så vil den vise en feilmelding ved hjelp av “Perror ()” -metoden og avslutte programmet. Ellers vil størrelsesvariabelen få størrelsen på byte som skal leses av FileDescriptor ved å bruke "Les" -funksjonen, og Printf -funksjon. "C" -variabelen vil ta den størrelsen og få tegn fra filen i henhold til størrelsen, og Printf -funksjonen vil vise disse.

Det er på tide å samle C -koden vår i Kali Linux med GCC -kompilatoren. Sørg for å ha GCC installert og konfigurert på slutten. Du må prøve ut GCC -kommandoen sammen med navnet på en C -fil, i.e., Readfile.C etterfulgt av -o -alternativet og navnet på en utførelsesfil som skal genereres fra denne kompilasjonsprosessen. Utførelsesfilen må inneholde “.ut ”forlengelse på slutten, jeg.e., Vi har navngitt utførelsesfilen som “Readfile.ute".

Etter den vellykkede samlingen har vi nå fått den kompilerte og feilfrie koden i ReadFile.ut -filen i "SRC" -mappen. Som du kan se at "LS" -listeinstruksjonen har vist at hovedkodefilen og utførelsesfilen etter samlingen begge er oppført her.

For å kjøre den feilfrie kompilerte filen “ReadFile.ut ”, prøv filnavnet med“./”Kommando som vist nedenfor. Utgangen for denne kommandoen viste feilen at det ikke er noen slik fil eller katalog i den gjeldende arbeidskatalogen "SRC", som du har lett etter.

For å unngå denne feilen, må vi ha “noe filt.txt ”som heter filen i" SRC "-arbeidskatalogen. Så vi har opprettet den samme navnefilen i "SRC" -mappen ved å bruke "Vim" -instruksjonen. Kommandoen “LS” viser at filen har blitt generert perfekt.

Vi har lagt til de viste under to linjer i “noen FILE.txt ”-fil.

Nå, når du kjører C -kodefilen igjen med “./”Karakter, vil den utføre utskriftserklæringen som viser at totalt 10 byte vil bli lest opp fra filen. Etter det viste den totalen av de første 10 tegnene fra “noen FILE.txt ”-fil, i.e., “Hei, Enj.”

La oss åpne den samme C -filen “ReadFile.C ”med“ Vim ”-kommandoen igjen for å oppdatere den.

Etter å ha åpnet den, har vi oppdatert antall byte som skal leses fra filen, i.e., erstattet 10 med 10 i "lest" systemanrop. Lagret denne koden for å unngå ulemper.

Etter å ha samlet denne filen igjen med "GCC" -kompilatoren og kjørt sin feilfri utførelsesfil "ReadFile.ut ”på Kali Linux -skallet, ble vi kjent med at begge linjene fra“ noen FILE.txt ”-filen til“ SRC ”-mappen er lest opp, i.e., inneholder mindre enn 100 tegn.

Konklusjon

Denne artikkelen handler om bruk av Read 2 -funksjonene til C -programmering for å lese data i byte fra alle slags filer. Vi har diskutert bruken og fordelen med denne funksjonen i det innledende avsnittet, og for bedre forståelse har vi lagt til en detaljert illustrasjon av C -programmet.