C ++ StringNpos

C ++ StringNpos
C ++ er et språk som brukes til å forsterke de grunnleggende programmeringskonseptene og forbedre programmerernes logiske tenkning. I C ++ takler vi matriser og strenger siden de er avgjørende for ethvert programmeringsspråk. I matriser lagrer vi samme type data og en streng er som en rekke tegn som er i stand til å lagre mer enn ett tegn i den. For å finne lengden på matrisen, bør vi vite størrelsen som vi definerer på initialiseringen av matrisen. Når det gjelder strenger, må vi noen ganger sjekke hele strengen for å finne et tegn eller ord. For å finne strengstørrelsen brukes Len () -funksjonen. Men hvis vi vil sjekke strengen eller finne en verdi, hvordan kan vi finne et tegn eller ord i en streng? For det formålet bruker vi “String :: NPOS” -metoden som er en konstant statisk verdi. Det "statiske" ordet forbeholder seg minnet for variabelen og "konstant" forteller kompilatoren at denne verdien ikke kan endres før programmets utførelse.

"Strengen :: NPOS" er en statisk konstant som har den høyeste verdien på -1 med et "size_t" -element som forteller kompilatoren på størrelsen på en streng og forteller hvordan kompilatoren sjekker tegnet til "størrelse_t" er oppfylt. Når det nødvendige elementet samsvarer med verdien av en streng, endres kompilatoren automatisk fra -1 til 0 ved å øke 1. “NPOS” betyr ingen posisjon, den viser posisjonen, og er opprinnelig satt til -1. Når et element blir funnet, økes det.

Bibliotek:

#inkludere

Ved å importere dette, vil vi kunne påkalle alle metodene til standardbiblioteker for C++. Vi finner strenglengden og sammenligner strengen med andre strenger. Så ved å integrere denne overskriftsfilen, trenger vi ikke å importere bibliotekene separat. "String :: NPOS" er en teknikk som brukes til å finne inngangen og utgangen, og den kan brukes uten å importere "iostream". Ved å inkludere den tidligere nevnte kodelinjen, kan vi bruke alle funksjonene til standardbiblioteker i koden vår.

Syntaks:

statisk const size_t npos = -1;
variabel_navn != streng :: NPOS

Vi trenger ikke å skrive den første uttalelsen fordi den er automatisk matet. Denne uttalelsen sjekker strengen fra 0 -indeksen til slutten for å finne den matchende posten fra en streng. Vi bruker den andre uttalelsen der vi vil sjekke om den ene strengens elementer samsvarer med den andre strengens elementer. Hvis det samsvarer, returnerer det sant. Ellers blir uttalelsen falsk. Uten å gå inn i tilstandens kropp, utfører kompilatoren neste uttalelse.

C ++ finner strengelementene ved å inkludere overskriftsfilen i koden

La oss lære å bruke metoden “String :: NPOS” ved å importere #Include Header -filen.

Kode:

#inkludere
ved hjelp av navneområdet STD;
int main ()
String str_0 = "The";
String str_1 = "Elizabeth the Queen";
int is_found = str_1.finn (str_0);
if (is_found != streng :: npos)
cout<

I den første uttalelsen importerer vi overskriftsfilen slik at vi kan bruke hvilken som helst funksjon av ethvert standardbibliotek. Initialiser deretter to strengtypevariabler kalt “STR_0” og “STR_1”. Dette gjøres inne i hoved- () -funksjonen. Deretter erklærer en annen variabel som er "is_found" av heltallstype som lagrer resultatet. Bruke .Finn () Metode for å finne “Str_0” -strengen i “STR_1”. Hvis den nødvendige strengen blir funnet, returnerer den indeksen til “is_found” der verdien er funnet. Bruk nå den betingede "hvis" -uttalelsen for å sjekke om "is_found" er lik "String :: NPOS" eller ikke. Her er verdien av “String :: NPOS” -1. Når strengen ikke er funnet og "is_found" har verdien på -1, blir tilstanden falsk. Når en tilstand er sann, utfører kompilatoren kroppen til "hvis" som inneholder en "cout" -uttalelse for å skrive ut teksten og indeksen der "STR_0" -verdien er funnet.

Produksjon:

Funnet på: 10

C ++ finner strengen 1 i streng 2 ved hjelp av “String :: NPOS” -metoden

La oss finne strengen i en annen streng ved hjelp av "String :: NPOS" -funksjonen.

Kode:

#inkludere
ved hjelp av navneområdet STD;
int main ()
String str_0 = "My";
String str_1 = "farging av håret mitt";
int is_found = str_1.finn (str_0);
if (is_found != streng :: npos)
cout<
ellers
cout<<"Not Found";

Her kan du integrere biblioteket slik at vi får tilgang til "cout" -metoden til dette biblioteket. I Main () -metoden er to strengtypevariabler, “STR_0” og “STR_1”, erklært. I neste uttalelse initialiseres "is_found" heltallstypevariabelen. Den inneholder utgangen når to strenger sammenlignes. Finn () -metoden brukes og den finner “STR_0” -strengen i “STR_1”. Hvis den blir funnet, returneres indeksen der verdien blir funnet tilbake til "is_found". Sjekk nå at verdien “is_found” samsvarer med “String :: NPOS” eller ikke. For det formålet påkaller vi "hvis" -uttalelsen. Hvis tilstanden er oppfylt, utføres kroppen til "hvis" -uttalelsen. Ellers blir "ellers" uttalelsen utført. Liket av "hvis" har en melding med indeksen der den nødvendige verdien finnes i strengen og kroppen til "ellers" inneholder en melding om ikke funnet.

Produksjon:

Min funnet på: 6

C ++ bruker “String :: NPOS” ved å lage en funksjon

La oss konstruere en funksjon og deretter kalle den funksjonen i Main () -metoden for å finne den første strengen i den andre.

Kode:

#inkludere
ved hjelp av navneområdet STD;
void funksjon_str (String str_0, streng str_1)

int fikk = str_0.finn (str_1);
Hvis (fikk != streng :: npos)
cout<< str_1<< " Found at: "<< (got) <
ellers
cout<< str_1 << " is not found ";

int main ()

String str_0 = "Min bok er";
String str_1 = "bok";
String str_2 = "min";
funksjon_str (str_0, str_1);
funksjon_str (str_0, str_2);
retur 0;

Først kalles funksjonen_str () metoden. Her passerer vi to argumenter i det. Inne i denne funksjonen, definer "GOT" heltallstypevariabelen og tilordne den med "STR_0.finn (str_1) ”. Denne funksjonen bestemmer indeksen for verdien der "STR_1" finnes i "STR_0". Neste, bruk "hvis" for å finne om "GOT" er lik "String :: NPOS" eller ikke. "Hvis" organet brukes hvis tilstanden er tilfreds, og "ellers" uttalelsen brukes hvis tilstanden ikke er fornøyd. Nå, påkalle Main () -metoden. Her erklærer vi de tre strengtypevariablene som “STR_0”, “STR_1” og “STR_2”. I neste uttalelse, ring funksjonen_str () -metoden og pass to attributter. Metoden blir behandlet og skriver ut en melding om funnet eller ikke funnet på konsollen. Fordelen med å bruke denne metoden er at den ikke spiller noen rolle hvor mange ganger vi kaller denne funksjonen; det vil behandle hver gang vi kaller det. Her kaller vi denne metoden to ganger og passerer de forskjellige argumentene.

Produksjon:

Boka funnet på: 3
Min funnet på: 0

Konklusjon

Vi studerte “String :: NPOS” -metoden til strengen for å matche en streng med en annen. Denne metodikken brukes også for å sjekke om et spesifikt element i en streng er til stede i den andre strengen eller ikke. Vi startet artikkelen med en kort introduksjon til strengene og String :: NPOS -metoden. De viktige overskriftsfilene som muligens importeres i koden for å ringe denne metoden, blir også diskutert. Denne artikkelen inneholder syntaks- og kodingseksempler på “String :: NPOs” i detalj. Denne artikkelen gir deg bruk av “String :: NPOS” -metoden med praktisk anvendelse.