C ++ är ett av de mest kraftfulla programmeringsspråken med hjälp av de inbyggda metoderna för att utföra operationer som sortering, sökning och backning. Dessa metoder täcker de användarvänliga nackdelarna som C ++ har jämfört med andra programmeringsspråk på hög nivå som Java och Python.

I den här artikeln lär du dig 12 C ++ - strängmetoder som hjälper dig att utföra operationer på strängar i en bråkdel av koden du har använt.

Vad är strängmetoder i C ++?

Strängmetoder är de förbyggda funktionerna som lagras i sträng rubrikfil. Du kan använda dem genom att importera sträng rubrikfil:

#omfatta 

Tänk på en exempel strängvariabel str med värdet "Welcome To MUO" för att implementera dessa metoder.

string str = "Välkommen till MUO";

Relaterad: JavaScript -strängmetoder du bör behärska idag

1. Börja()

De Börja() metod i C ++ returnerar en iterator till början av strängen. Skapa en iterator med bil nyckelord och lagra den initiala referensen för strängvariabeln med str.begin (). Koden nedan visar implementeringen:

instagram viewer
auto i = str.begin ();
cout << "Det första tecknet i strängen str är:" <

Produktion:

Det första tecknet i strängen str är: W 

2. slutet()

De slutet() strängmetod returnerar iteratorn till slutet av strängen. Denna kod skriver ut det sista tecknet i strängvariabeln:

auto i = s.end ()-1;
cout << "Det sista tecknet i strängen s är:" <

Produktion:

Det första tecknet i strängen s är: O

Du kan också gå igenom strängen och skriva ut enskilda tecken med Börja() och slutet() metoder. Här är hur:

 för (auto i = str.begin (); i! = str.end (); jag ++) {
cout <}

3. trycka tillbaka()

De trycka tillbaka() metoden infogar ett tecken i slutet av strängen. Genom att utföra denna operation ökar strängens storlek med 1.

 str.push_back ('!');
cout <

Utmatningen av koden ovan kommer att ha ett utropstecken (!) Tillsammans med den ursprungliga strängen:

Välkommen till MUO!

Du kan också lägga till en uppsättning tecken eller en annan sträng genom att slinga igenom och lägga till den tecken för tecken. Tänk på en strängvariabel str2, med värdet ”Hej där”. För att lägga till denna variabel till den ursprungliga strängen med trycka tillbaka() metod:

string str2 = "Hej där";
för (auto i = str2.begin (); i! = str2.end (); i ++) {
str.push_back (*i);
}
cout <

Produktion:

Välkommen till MUO! Hallå där

4. pop_back ()

De pop_back () metod tar bort det sista tecknet i en sträng. Så här kan du prova den här metoden på strängen str:

str.pop_back ();
cout <

Produktion:

Välkommen till MU

5. storlek()

De storlek() metoden hjälper dig att beräkna strängens längd.

cout << "Strängens str -storlek är" <

6. kopiera()

De kopiera() metoden kopierar en komplett sträng eller delsträng. Det accepterar tre argument: teckenmatris, delsträngens längd och positionen där strängen ska börja kopiera från.

rödingstr2 [50];
str. kopia (str2, 6,2);
cout << "Värdet i str2:" <

Produktion:

Värdet i str2: lcome

7. byta()

De byta() metod hjälper dig att byta två strängar med varandra. Syntaxen för denna metod är:

string1.swap (string2)

Denna metod accepterar en strängvariabel som ett argument. Du kan köra den här metoden på strängen du vill byta och skriva ut för att kontrollera resultaten.

string str = "Välkommen till MUO";
string str2 = "Hej där";
str. byta (str2);
cout << "Sträng 1 str:"

Produktion:

Sträng 1 str: Hej där
Sträng 2 str2: Välkommen till MUO

Relaterad: Hur man byter två variabler i C ++, Python och JavaScript

8. getline ()

De getline () metoden lagrar en ström av tecken som accepteras under inmatning. Denna metod accepterar två argument: cin och strängvariabeln.

sträng s;
cout << "Ange en sträng" cout <

Produktion:

Ange en sträng
Välkommen till MUO

9. ändra storlek ()

De ändra storlek () metoden ändrar strängens längd genom att dynamiskt öka eller minska den. Det accepterar ett argument: längden till vilken du vill ändra storlek på strängen.

str. storlek (10);
cout << "Värdet av str efter att ha ändrat storlek:" <

Produktion:

Värdet av str efter att ha ändrat storlek: Välkommen till

10. kapacitet()

De kapacitet() metod i C ++ returnerar kapaciteten som tilldelats strängen. Den kan vara lika med strängens längd eller större än den.

cout << "Strängens kapacitet är" <

11. stoi ()

De stoi () metoden hjälper till att konvertera ett tal i form av en sträng till dess numeriska värde. Den accepterar en parameter: strängvariabeln. Om din strängvariabel har andra tecken bortsett från siffror kommer den att filtrera bort dem. Men för att denna metod ska fungera måste de icke-numeriska strängtecknen följa siffrorna. Om tecknen visas före siffrorna returnerar det ett fel.

Innan du fortsätter med ovanstående åtgärd, se till att du lagrar den i en heltalsvariabel innan du skriver ut den. Här är ett exempel:

sträng s1 = "123";
int v1 = stoi (s1);
cout << "Stoi () för s1:" int v2 = stoi (s2);
cout << "Stoi () för s2:" <

Produktion:

Stoi () för s1: 123 
Stoi () för s2: 123

12. rbegin () och rend ()

De rbegin () metoden returnerar referensen för den omvända iteratorn till strängen i slutet. På samma sätt är rämna() metod returnerar referensen för start iteratorn till strängen i början.

auto beg = str.rbegin ();
auto end = str.rend ()-1;
cout << "Det sista tecknet är:" <

Du kan också skriva ut baksidan av strängen använder sig av rbegin () och rämna() metoder. För att göra det kan du gå igenom strängen och skriva ut den tecken för tecken.

för (auto i = str.rbegin (); i! = str.rend (); jag ++) {
cout <}

Produktion:

Det sista tecknet är: O
Den första karaktären är: W
OUM oT emocleW

Ta ett steg framåt för att lära dig C ++

Nu när du har lärt dig att implementera olika strängmetoder för sträng header, kan du känna dig säker på att utforska fler förbyggda metoder i C ++-header-filerna. Från sortera() och omvänd() till binary_search (), det finns lite C ++ STL som inte kan åstadkommas i kodningsvärlden.

Att ta sig tid att lära sig om standardmallbiblioteket är en utmärkt investering för C ++ - programmerare på alla nivåer. Standardmallbiblioteket har inbyggda funktioner, vanliga datastrukturer och praktiska algoritmer för att göra programmeringen enkel och effektiv.

Dela med sigTweetE-post
En nybörjarguide till standardmallbiblioteket i C ++

Vill du bättre förstå C ++ med standardmallbiblioteket? Slå böckerna här.

Läs Nästa

Relaterade ämnen
  • Programmering
  • Programmering
  • Kodningstips
Om författaren
Unnati Bamania (5 artiklar publicerade)

Unnati är en entusiastisk full stack -utvecklare. Hon älskar att bygga projekt med olika programmeringsspråk. På fritiden älskar hon att spela gitarr och är matlagningsentusiast.

Mer från Unnati Bamania

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e -böcker och exklusiva erbjudanden!

Klicka här för att prenumerera