C ++ je jedním z nejmocnějších programovacích jazyků s pomocí vestavěných metod k provádění operací, jako je třídění, vyhledávání a obrácení. Tyto metody pokrývají nevýhody, které C ++ má ve srovnání s jinými programovacími jazyky na vysoké úrovni, jako je Java a Python,.

V tomto článku se naučíte 12 řetězcových metod C ++, které vám pomohou provádět operace s řetězci ve zlomku kódu, který používáte.

Jaké jsou metody řetězců v C ++?

Řetězcové metody jsou předem vytvořené funkce uložené v souboru tětiva hlavičkový soubor. Můžete je použít importováním souboru tětiva hlavičkový soubor:

#zahrnout 

Zvažte příklad proměnné řetězce str s hodnotou „Welcome To MUO“ k implementaci těchto metod.

string str = „Vítejte v MUO“;

Příbuzný: Metody řetězců JavaScriptu, které byste dnes měli zvládnout

1. začít()

The začít() metoda v C ++ vrací iterátor na začátek řetězce. Vytvořte iterátor pomocí auto klíčové slovo a uložte počáteční odkaz na proměnnou řetězce pomocí str.begin (). Níže uvedený kód ukazuje implementaci:

instagram viewer
auto i = str.begin ();
cout << "První znak v řetězci str je:" <

Výstup:

První znak v řetězci str je: W 

2. konec()

The konec() string metoda vrací iterátor na konec řetězce. Tento kód vytiskne poslední znak řetězcové proměnné:

auto i = s.end ()-1;
cout << "Poslední znak v řetězci s je:" <

Výstup:

První znak v řetězci s je: O

Můžete také procházet řetězcem a tisknout jednotlivé znaky pomocí začít() a konec() metody. Zde je postup:

 pro (auto i = str.begin (); i! = str.end (); i ++) {
cout <}

3. zatlačit zpátky()

The zatlačit zpátky() metoda vloží znak na konec řetězce. Provedením této operace se velikost řetězce zvětší o 1.

 str.push_back ('!');
cout <

Výstup výše uvedeného kódu bude mít spolu s původním řetězcem vykřičník (!):

Vítejte na MUO!

Můžete také připojit sadu znaků nebo jiný řetězec opakováním a připojením znak po znaku. Zvažte proměnnou řetězce str2, s hodnotou „Ahoj“. Chcete -li tuto proměnnou připojit k původnímu řetězci pomocí zatlačit zpátky() metoda:

string str2 = "Ahoj";
pro (auto i = str2.begin (); i! = str2.end (); i ++) {
str.push_back (*i);
}
cout <

Výstup:

Vítejte na MUO! Ahoj

4. pop_back ()

The pop_back () metoda odstraní poslední znak řetězce. Zde je návod, jak můžete tuto metodu vyzkoušet na řetězci str:

str.pop_back ();
cout <

Výstup:

Vítejte na MU

5. velikost()

The velikost() metoda vám pomůže vypočítat délku řetězce.

cout << "Velikost řetězce str je" <

6. kopírovat()

The kopírovat() metoda zkopíruje celý řetězec nebo dílčí řetězec. Přijímá tři argumenty: pole znaků, délku podřetězce a pozici, ze které má řetězec začít kopírovat.

char str2 [50];
str.copy (str2, 6,2);
cout << "Hodnota v str2:" <

Výstup:

Hodnota v str2: lcome

7. vyměnit ()

The vyměnit () Tato metoda vám pomůže zaměnit dva řetězce mezi sebou. Syntaxe této metody je:

string1.swap (string2)

Tato metoda přijímá jako argument řetězcovou proměnnou. Tuto metodu můžete spustit na řetězci, který chcete vyměnit a vytisknout, abyste zkontrolovali výsledky.

string str = „Vítejte v MUO“;
string str2 = "Ahoj";
str.swap (str2);
cout << "Řetězec 1 str:"

Výstup:

Řetězec 1 str: Dobrý den
Řetězec 2 str2: Welcome to MUO

Příbuzný: Jak vyměnit dvě proměnné v C ++, Pythonu a JavaScriptu

8. getline ()

The getline () metoda ukládá proud znaků přijatých během zadávání. Tato metoda přijímá dva argumenty: cin a proměnná řetězce.

řetězec s;
cout << "Zadejte řetězec" cout <

Výstup:

Zadejte řetězec
Vítejte v MUO

9. změnit velikost ()

The změnit velikost () metoda mění délku řetězce dynamickým zvýšením nebo zmenšením. Přijímá jeden argument: délku, na kterou chcete změnit velikost řetězce.

str.resize (10);
cout << "Hodnota str po změně velikosti:" <

Výstup:

Hodnota str po změně velikosti: Welcome To

10. kapacita()

The kapacita() metoda v C ++ vrací kapacitu přidělenou řetězci. Může se rovnat délce řetězce nebo může být větší.

cout << "Kapacita řetězce je" <

11. stoi ()

The stoi () metoda pomáhá převést číslo ve formě řetězce na jeho číselnou hodnotu. Přijímá jeden parametr: proměnnou řetězce. Pokud má proměnná typu řetězec kromě čísel další znaky, odfiltruje je. Ale aby tato metoda fungovala, musí nečíselné řetězcové znaky následovat čísla. Pokud se znaky objeví před čísly, vrátí chybu.

Než provedete výše uvedenou operaci, ujistěte se, že ji před tiskem uložíte do celočíselné proměnné. Zde je příklad:

řetězec s1 = "123";
int v1 = stoi (s1);
cout << "Stoi () pro s1:" int v2 = stoi (s2);
cout << "Stoi () pro s2:" <

Výstup:

Stoi () pro s1: 123 
Stoi () pro s2: 123

12. rbegin () a rend ()

The rbegin () metoda vrací odkaz zpětného iterátoru na řetězec na konci. Podobně i rend () metoda vrací odkaz na počáteční iterátor na řetězec na začátku.

auto beg = str.rbegin ();
auto end = str.rend ()-1;
cout << "Poslední znak je:" <

Můžete také vytisknout soubor rub řetězce použitím rbegin () a rend () metody. Chcete -li to provést, můžete procházet řetězec a vytisknout jej znak po znaku.

pro (auto i = str.rbegin (); i! = str.rend (); i ++) {
cout <}

Výstup:

Poslední postava je: O
První znak je: W
OUM oT emocleW

Udělejte krok vpřed v učení C ++

Nyní, když jste se naučili implementovat různé řetězcové metody tětiva header, můžete si být jisti, že prozkoumáte více předem vytvořených metod v souborech záhlaví C ++. Z třídit () a zvrátit() na binary_search (), ve světě kódování je málo, co C ++ STL nemůže dosáhnout.

Věnovat čas seznámení se se standardní knihovnou šablon je skvělou investicí pro programátory C ++ všech úrovní. Knihovna standardních šablon poskytuje integrované funkce, společné datové struktury a praktické algoritmy, které usnadňují a zefektivňují programování.

PodíltweetE-mailem
Průvodce pro začátečníky ke standardní knihovně šablon v C ++

Chcete lépe porozumět C ++ se standardní knihovnou šablon? Nakoukněte do knih zde.

Číst dále

Související témata
  • Programování
  • Programování
  • Tipy pro kódování
O autorovi
Unnati Bamania (5 článků zveřejněno)

Unnati je nadšený vývojář full stacků. Ráda staví projekty pomocí různých programovacích jazyků. Ve svém volném čase ráda hraje na kytaru a je nadšencem vaření.

Více od Unnati Bamania

Přihlaste se k odběru našeho zpravodaje

Připojte se k našemu zpravodaji a získejte technické tipy, recenze, bezplatné elektronické knihy a exkluzivní nabídky!

Kliknutím sem se přihlásíte k odběru