C ++ jest jednym z najpotężniejszych języków programowania z pomocą wbudowanych metod wykonywania operacji takich jak sortowanie, wyszukiwanie i odwracanie. Te metody obejmują wady łatwości użycia, które C++ ma w porównaniu z innymi językami programowania wysokiego poziomu, takimi jak Java i Python.

W tym artykule poznasz 12 metod napisowych w języku C++, które pomogą Ci wykonywać operacje na łańcuchach w ułamku kodu, którego używasz.

Czym są metody ciągów w C++?

Metody łańcuchowe to gotowe funkcje przechowywane w strunowy plik nagłówkowy. Możesz z nich korzystać, importując strunowy plik nagłówkowy:

#włączać 

Rozważ przykładową zmienną łańcuchową str z wartością „Welcome To MUO”, aby wdrożyć te metody.

string str = „Witamy w MUO”;

Związane z: Metody ciągów JavaScript, które powinieneś opanować dzisiaj

1. rozpocząć()

ten rozpocząć() Metoda w C++ zwraca iterator na początek ciągu. Utwórz iterator za pomocą automatyczny słowa kluczowego i przechowuj początkowe odwołanie do zmiennej łańcuchowej za pomocą str.początek(). Poniższy kod przedstawia implementację:

auto i = str.początek();
cout<

Wyjście:

Pierwszy znak w ciągu str to: W 

2. kończyć się()

ten kończyć się() metoda string zwraca iterator na koniec łańcucha. Ten kod drukuje ostatni znak zmiennej łańcuchowej:

auto i = s.end()-1;
cout<

Wyjście:

Pierwszy znak w ciągu s to: O

Możesz także zapętlić ciąg i wydrukować poszczególne znaki za pomocą rozpocząć() oraz kończyć się() metody. Oto jak:

 for (auto i = str.początek(); i!= str.end(); i++){
nadzieja<}

3. push_back()

ten push_back() metoda wstawia znak na końcu ciągu. Wykonując tę ​​operację, rozmiar ciągu zwiększa się o 1.

 str.push_back('!');
szajka<

Wynik powyższego kodu będzie zawierał znak wykrzyknika (!) wraz z oryginalnym ciągiem:

Witamy w MUO!

Możesz także dołączyć zestaw znaków lub inny ciąg, wykonując pętlę i dołączając go znak po znaku. Rozważ zmienną łańcuchową str2, o wartości „ Cześć”. Aby dołączyć tę zmienną do oryginalnego ciągu za pomocą push_back() metoda:

string str2 = " Cześć";
for (auto i = str2.początek(); i!=str2.end() ;i++){
str.push_back(*i);
}
szajka<

Wyjście:

Witamy w MUO! Cześć

4. pop_back()

ten pop_back() Metoda usuwa ostatni znak ciągu. Oto jak możesz wypróbować tę metodę na łańcuchu str:

str.pop_back();
szajka<

Wyjście:

Witamy w MU

5. rozmiar()

ten rozmiar() Metoda pomaga obliczyć długość ciągu.

cout<

6. Kopiuj()

ten Kopiuj() Metoda kopiuje cały ciąg lub podciąg. Przyjmuje trzy argumenty: tablicę znaków, długość podciągu i pozycję, od której ciąg ma rozpocząć kopiowanie.

znak str2[50];
str.kopiuj (str2, 6,2);
cout<

Wyjście:

Wartość w str2: lcome

7. zamieniać()

ten zamieniać() Metoda pomaga zamienić ze sobą dwa ciągi. Składnia tej metody to:

ciąg1.swap (ciąg2)

Ta metoda akceptuje zmienną typu string jako argument. Możesz uruchomić tę metodę na łańcuchu, który chcesz zamienić i wydrukować, aby sprawdzić wyniki.

string str = „Witamy w MUO”;
string str2 = "Cześć";
str.swap (str2);
cout<

Wyjście:

Ciąg 1 str: Cześć!
Ciąg 2 str2: Witamy w MUO

Związane z: Jak zamienić dwie zmienne w C++, Pythonie i JavaScript

8. getline()

ten getline() Metoda przechowuje strumień znaków akceptowanych podczas wprowadzania. Ta metoda przyjmuje dwa argumenty: Cin i zmienna łańcuchowa.

ciąg s;
cout<szajka<

Wyjście:

Wpisz ciąg
Witamy w MUO

9. Zmień rozmiar()

ten Zmień rozmiar() Metoda zmienia długość ciągu poprzez jego dynamiczne zwiększanie lub zmniejszanie. Przyjmuje jeden argument: długość, do której chcesz zmienić rozmiar swojego ciągu.

str.resize (10);
cout<

Wyjście:

Wartość str po zmianie jego rozmiaru: Welcome To

10. Pojemność()

ten Pojemność() Metoda w C++ zwraca pojemność przydzieloną do ciągu. Może być równa długości łańcucha lub od niej większa.

cout<

11. stoi ()

ten stoi () Metoda pomaga przekonwertować liczbę w postaci ciągu na jej wartość liczbową. Przyjmuje jeden parametr: zmienną typu string. Jeśli zmienna typu string zawiera inne znaki oprócz liczb, odfiltruje je. Ale aby ta metoda działała, nienumeryczne znaki ciągu muszą następować po liczbach. Jeśli znaki pojawią się przed liczbami, zwróci błąd.

Przed wykonaniem powyższej operacji upewnij się, że przechowujesz ją w zmiennej całkowitej przed jej wydrukowaniem. Oto przykład:

ciąg s1 = "123";
int v1 = stoi (s1);
cout<int v2 = stoi (s2);
cout<

Wyjście:

Stoi() dla s1: 123 
Stoi() dla s2: 123

12. rbegin() i rend()

ten rpoczątek() Metoda zwraca odwołanie iteratora odwrotnego do ciągu na końcu. Podobnie rozdzierać() Metoda zwraca odwołanie iteratora start do ciągu na początku.

auto b. = str.rbegin();
auto koniec = str.rend()-1;
cout<

Możesz również wydrukować rewers struny za pomocą rpoczątek() oraz rozdzierać() metody. Aby to zrobić, możesz przejść przez łańcuch w pętli i wydrukować go znak po znaku.

for (auto i=str.rbegin(); i!=str.rend(); i++){
nadzieja<}

Wyjście:

Ostatni znak to: O
Pierwszy znak to: W
OUM OT EMOCLEW

Zrób krok do przodu w nauce C++

Teraz, gdy nauczyłeś się implementować różne metody łańcuchowe strunowy header, możesz czuć się pewnie eksplorując więcej gotowych metod w plikach nagłówkowych C++. Z sortować() oraz odwrócić() do wyszukiwanie_binarne(), niewiele C++ STL nie może osiągnąć w świecie kodowania.

Poświęcenie czasu na poznanie standardowej biblioteki szablonów to doskonała inwestycja dla programistów C++ na wszystkich poziomach. Standardowa biblioteka szablonów zapewnia wbudowane funkcje, wspólne struktury danych i przydatne algorytmy, dzięki którym programowanie jest łatwe i wydajne.

UdziałĆwierkaćE-mail
Przewodnik dla początkujących po bibliotece szablonów standardowych w C++

Chcesz lepiej zrozumieć C++ za pomocą biblioteki szablonów standardowych? Hit książki tutaj.

Czytaj dalej

Powiązane tematy
  • Programowanie
  • Programowanie
  • Wskazówki dotyczące kodowania
O autorze
Unnati Bamania (5 opublikowanych artykułów)

Unnati to entuzjastyczny programista full stack. Uwielbia budować projekty w różnych językach programowania. W wolnym czasie uwielbia grać na gitarze i jest entuzjastką gotowania.

Więcej od Unnati Bamania

Zapisz się do naszego newslettera

Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!

Kliknij tutaj, aby zasubskrybować