Strnlen 2 C -funksjon

Strnlen 2 C -funksjon

For å bestemme lengden på en streng i C, bruk strnlen -funksjonen. Metoden som returnerer strengens karaktertelling kalles strenglengden. Enhver streng som bruker denne tilnærmingen har lengden på tegnene i strengen. Strnlen () -funksjonen bestemmer størrelsen på strengen som er referert til av karakteren “S”, unntatt den endelige nullkarakteren og opp til Maxlen Bytes. Etter de første Maxlen Bytes slutter funksjonen å sjekke. Denne funksjonen er litt forskjellig fra strlen -funksjonen. Karakterene i en streng “S” som kommer før den siste nullkarakteren er indikert med Strlen () -funksjonen. Strnlen () -funksjonen produserer enten det samme utfallet som Strlen () eller Maxlen, avhengig av hva som er færre. Vi kan bestemme en lengde i fast størrelse med Strnlen-kommandoen. Her vil vi se på noen tilfeller som returnerer en strenglengde ved å bruke Strnlen -funksjonen på C -språket mens du bruker Ubuntu 20.04 Terminal.

Syntaks:

# size_t strnlen (const char *s, size_t maxlen);

Strnlen -funksjonen tar bare to parametere som inkluderer pekervariabelen “S” for Char -datatypen og “size_t” maxlen. Her peker parameteren “S” på en streng som har en nullend. "Size_t" Maxlen representerer flest tegn som skal skannes før du returnerer en streng endemarkør. Strnlen () -metoden returnerer maksimum av Maxlen -byte i strengen som er referert til av “S”, og ignorerer avsluttende nullbyte ('0').

Strnlen () -funksjonen undersøker aldri noen tegn forbi S [Maxlen-1] når du gjør dette. I stedet skanner det bare de første Maxlen -tegnene i strengen som er koblet til av “S”. Nå bruker vi denne Strnlen -syntaksen i vår kodeimplementering med C -språket.

Eksempel 1: Program for strnlen -funksjon

Strengen.H -biblioteket inneholder de forhåndsinnstilte strengfunksjonene for C, inkludert strnlen -funksjonen. Én variabel type, en makro og mange funksjoner for å jobbe med tegnarrayene er alle definert i overskriftsfilen “String.h ”. Flere funksjoner for å jobbe med strenger er erklært i C -overskriftsfilen “String.h ”. Den rette måten å bruke Strnlen -funksjonen demonstreres i følgende:

#inkludere
#inkludere
#inkludere
Int Main (Void)

printf ("%ld \ n", strnlen ("datamaskin", 9));
printf ("%ld \ n", strnlen ("min verden \ n", 4));
printf ("%ld \ n", strnlen ("", 10));
return exit_success;

Hvert programs første trinn er å inkludere alle nødvendige biblioteker for koden for å utføre perfekt. Så vi la til de tre hovedbibliotekene for dette programmet. Inne i den hovedmetoden blir tomrom passert som en parameter. I denne situasjonen kan hovedet akseptere maksimalt null argumenter. Følgelig, siden hovedfunksjonen ikke aksepterer noen parametere, bruker den i hovedsak Int Main (Void).

Deretter kalte vi de tre printf -kommandoene. For disse kommandoene sendes '%LD' -formatet som en uttalelse. For å representere heltalltallene brukes spesifikasjonen for %D -format. Heltallverdien som holdes i variabelen skrives ut, bruker printf () -funksjonen. Strnlen er også erklært i printf -metoden. Vi definerte to parametere: den ene er strengverdien og den andre er heltallverdien. Legg merke til at den første og andre strnlen -funksjonen er uten nullkarakteren og den siste har nullkarakteren.

Nå, med GCC -kompilatoren, har vi gitt et filnavn på koden der Strnlen -funksjonen brukes. Som kodefilen er inne i Strnlen.C, vi har gitt en kommando som denne: GCC Strnlen.C -o Strnlen. Koden er samlet i følgende bilde. Ved å gi “./strnlen ”filnavn, den påfølgende utgangen produseres. Siden de to første strnlen -funksjonene inneholder noen strengverdier, vises strnlen til strengen. Den siste linjen i utgangen som returnerer verdien 0 ettersom den definerte strengen har nulltegn.

Eksempel 2: Program for Strnlen -funksjon for å få Maxlen

La oss se hva dette titteleksemplet betyr ved å implementere eksempelkoden:

#inkludere
#inkludere
int main ()

char str1 [100] = "Eksemplet på strnlen -funksjonen - C -språk";
printf ("strenglengde str1 når maxlen er 30: %ld \ n", strnlen (str1, 30));
printf ("strenglengde str1 når maxlen er 10: %ld \ n", strnlen (str1, 10));
retur 0;

Her definerte vi C -bibliotekene for å utføre Strnlen -funksjonaliteten og andre kommandoer. Deretter har vi INT hovedfunksjon. En int fungerer som en bestemt type avkastningshoved. I andre begrep forventes funksjonen nå å motta en verdi av resultattypen INT (heltall). En returerklæring er også inkludert.

Etter at et program er ferdig, bør det helst returnere verdien på 0 til den primære. Inne i hovedblokken opprettet vi en STR1 -variabel. En rekke chars er produsert av Char Str1 [100] -uttrykket. Vi kan lagre 100 tegn i denne karakteroppstillingen, alt fra indeks 0 til indeks 99. Initialiser den deretter med strengen som inneholder de forskjellige ordene. Printf -kommandoen her brukes til å skrive ut lengden på strengtegnene da vi ga Strnlen -funksjonen til denne kommandoen. Den første Strnlen tildelte Maxlen 30 og den andre tildelte Maxlen 10.

Strnlen -funksjonen på kompilering genererer følgende maxlen av strengtegnene:

Konklusjon

Dette innlegget søker å informere deg om C -språkets strnlen -funksjon. Her viste vi hvordan vi bruker Strnlen -funksjonen. Vi forklarte syntaks for strnlen -funksjonen med hver parameter den tar og returverdien fra denne spesielle funksjonen. Strnlen () -operasjonen returnerer maxlen til karakterstrengene hvis det ikke er noen null slutt ('0') tegn blant de første karakterene i Maxlen gitt til av "S" -variabelen. Ellers returnerer det strnlen (e) hvis det er mindre enn Maxlen. Vi ga to eksempler for en bedre forståelse av Strnlen -funksjonen på C -skriptspråket som rydder din visjon om denne Strnlen -funksjonen til C -språket.