Getline -funksjonen bruker RealLoc -funksjonen for automatisk å øke minneblokken etter behov, og sikre at det aldri er en rommangel. Dette er en av forklaringene på hvorfor Getline er trygg. Verdien som returneres i den andre parameteren vil også informere oss om den nye blokkstørrelsen. Den returnerer -1 hvis en feil vises, for eksempel å nå slutten av en fil uten å motta noen byte. Getline -funksjoner slutter å lese innspill fra strømmen når de møter et nytt linjekarakter eller slutten av en fil.Syntaks
Syntaks for getline () -funksjonen vises i neste linje
size_t getline (char ** streng, size_t *n, fil *stream);Forklaring av syntaks
Fordi størrelse “T” er en usignert integrert type, vil den ikke gi en negativ verdi. Det brukes mest til å indeksere og beregne objekter i en matrise. Dette argumentet indikerer størrelsen på minneblokken referert til av den første parameteren i byte. “** Streng” er en karaktergruppe dobbeltpeker. Dette spesifiserer stedet for karakteren Arrays første karakter. Det vil ha linjen lest av getline -funksjonen i den. “*N” er en peker til bare en variabel som holder matrisens størrelse. “Fil *strøm,” jeg.e., stdin er strømmen som filen blir lest. Det er enhetspekeren som representerer strømmen som karakterene leses. Inndatafilbeskrivelsen er stdin.
Eksempel for getline () -funksjon i C
Nå har vi en illustrasjon for å forstå bedre getline () -funksjonen på programmeringsspråket C. Vi implementerer denne illustrasjonen på Ubuntu 20.04 operativsystem. Imidlertid kan ethvert annet operativsystem brukes til dette formålet. Terminalen til Ubuntu 20.04 Operativsystem kan nås av “Ctrl+Alt+T” eller ved å se etter det i applikasjonene. Når du har fått det, utfører du følgende Nano -instruksjon for å opprette en fil. Vi har navngitt det
“Nano Getl.c ”Imidlertid er valg av navn helt avhengig av deg.
Det vil ikke komme noen produksjon av denne instruksjonen, men vi vil få tilgang til GNU Nano -redaktøren av Ubuntu 20.04 operativsystem. Du må skrive den vedlagte koden i filen. Du kan endre det når du forstår funksjonaliteten. Lagre denne filen og avslutte den.
Getline () -metoden er definert i STDIO.H headerfil. Getline () -funksjonen tar tre argumenter og returnerer antall tegn vi skrev inn. Størrelsen på størrelse_t type tegn brukes til å holde returverdien. Malloc () -funksjonen er definert i stdlib.H headerfil. Strenginngangen lagres i minnested. Bruk størrelse_t variabel type, som er et heltall av en bestemt type. Getline () -funksjonen krever dette. Bufferstørrelsen er satt til 32 tegn i koden over. Verdien av buffer, bufsize og deretter stdin brukes av getline () -metoden for standardinngang.
PRINTF () -funksjonen gir ut en tekststreng til stdout -skjermen på terminalen. Det er en av de vanligste måtene å sende ut en streng. Når du lukker filen, kommer tiden når du må utføre koden. I Ubuntu 20.04 Operativsystem, GCC Compiler brukes til kodesamling og utførelse. Vi har allerede installert det. Hvis du ikke har en GCC -kompilator i Ubuntu 20.04 Operativsystem, kan du installere det ved “Sudo Apt Installer GCC -instruksjon. Kjør nå den oppførte kommandoen.
$ gcc getl.cSom sådan vil det ikke komme noen produksjon av denne instruksjonen. Utfør nå den listede kommandoen for å få utdataene fra ovennevnte kode:
$ ./en.uteDu kan bekrefte at vi ikke har noen feil. Systemet fikk oss til å legge inn noe, så vi skrev inn "Kalsoom". Antall tegn som ble lest fra den angitte strengen vises i utgangen.
Konklusjon
Denne guiden har demonstrert konseptet og bruken av getline () -funksjonen i C -programmering. Vi har forklart syntaks for denne funksjonen slik at du kan bruke den deretter i programmene dine. Det praktiske eksemplet er forklart godt, og utførelsen har vist seg at brukerne får et bredere syn på getline () -funksjonen i C -programmering. Nå kan du bruke dette eksemplet i koden din der det er nødvendig.