Funkce řetězce C ++
Řetězec je posloupnost znaků považovaných za jeden objekt v c ++. Máme třídu řetězců v C ++. Tato třída řetězců se používá k inicializaci objektů, které obsahují sekvenci znaků. V každém řetězci programovacího jazyka je základní část, kterou se musíme učit. Všechny programovací jazyky mají téměř stejný koncept vztahující se k řetězci. Tato funkce nám dává možnost artikulovat náš kód.
Co je to za řetězec?
K použití řetězcových funkcí v C ++ potřebujeme přidat knihovnu pojmenovanou v našem kódu nahoře, která vám poskytne řetězcové funkce. Musí být součástí souboru záhlaví #include. Jak víme, existuje mnoho chování, kterým objekt řetězce rozumí, a několik operací, které můžeme s řetězcovým objektem provádět.
Příklady řetězcových funkcí v C ++
Zde budeme diskutovat o tom, jak používat řetězcové funkce v programování v C ++ pomocí příkladů
Příklad č. 1:
String Greeting = “Hello World!”;
Cout<
Což dává následující výstup
Výstup: Ahoj svět!
Jak víme, cout << se používá k tisku na obrazovku v c ++ a cin >> má převzít vstup na obrazovce.
Podívejme se na následující příklad, který bude přesnější:
Příklad č. 2:
String greeting ;
Cin>>greeting;
Cout << ”Běžná věta v programování je:” << pozdrav << endl;
Naším cílem je naučit se, jak můžeme hrát se strunou.
Příklad č. 3:
// Předpokládejme, že máme tři řetězcové proměnné
string str1 = “ice”; //initialized with value
string str2 = “cream”; //initialized with value
string str3; // empty string
str3 = str1 + str2; // Here we are concatenating the string
cout << str3;
Výstup: zmrzlina
Jak jsme toho dosáhli?
Standardní třída řetězců v c ++ přetěžuje operátora přiřazení (=). Jasnější viz příklad 3. Máme tři objekty str1, str2, str3. Zřetězili jsme dva řetězce, tj. Str1 a str2 a hodnota se zkopíruje do str3. to znamená, že operátor přiřazení byl přetížen a nová hodnota v našem případě je zmrzlina zkopírována do str3.
Třída řetězce má výchozí konstruktor, který inicializuje řetězcový objekt na prázdný řetězec. Standard c ++ má další konstruktor, který vezme hodnotu (ex.str1 a str2 má přiřazenou hodnotu a str3 je prázdný)
Následuje několik funkcí řetězce C ++, které můžeme použít:
- Substr (počáteční index char, od toho indexu kolik znaků chcete.)
- Strcat (str1, str2): Připojení řetězce
- Strcmp (str1, str2): Vrací -ve hodnotu, pokud str1 je menší než str2; 0, pokud str1 je rovno str2; a> 0 (hodnota + ve), pokud str1 je větší než str2.
- Strcpy (str1, str2): Vyměňte obsah
- Strlen (str1): Udává délku řetězce
Substr (): Tato funkce je velmi jednoduchá. Jak název napovídá. vezměte podřetězec z daného řetězce. Tato funkce má dva parametry.
- První parametr navrhuje počáteční index č.
- Druhý parametr navrhuje, kolik znaků chcete od počátečního indexu.
Příklad č. 4:
řetězec s = „C ++ je snadný jazyk“;
C | + | + | i | s | A | E | A | s | y | l | A | n | G | u | A | G | E | ||||
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
Index začíná na 0string language = s.substr(0, 3); // output of substr storing in language variable.
cout << language << endl;
Výstup: c ++
Počáteční index je 0 a potřebujeme tři znaky z 0. indexu, takže 3 je druhý parametr. Druhý parametr pracuje od 1 do n. ne od 0 do n. takže první tři znaky nám dávají c ++.
Strcat (): Tato řetězcová funkce v C ++ kombinuje dva různé řetězce, jak je ukázáno v příkladu # 5 .
Příklad č. 5 :
String str1 = "I love my";
string str2 = " Country";
strcat(str1, str2);
cout << str1 ;
Ve výše uvedeném příkladu funkce strcat vezme hodnotu kopie str2 a vloží ji do str1. Kombinuje a dává výstup, jak je uvedeno níže:
Výstup: Miluji svou zemi
Strcmp (): Jak název napovídá, porovnává to dva řetězce a vrací výsledek.
Předpokládejme, že máme dva řetězce str1 a str2 .
Následující tabulka ukazuje přesný výstup pro lepší porozumění:
str1 <str2 | Vrátí hodnotu –ve |
str1 == str2 | Vrací 0 (nula) |
str1> str2 | Vrací hodnotu + ve |
Příklad č. 6:
string str1 = “We have seven Continents in the wolrd”;
string str2 = “We have seven Continents in the wolrd”;
int result = strcmp(str1, str2);
cout << result <
Výstup: 0 // oba řetězce jsou stejné str1 == str2
V ostatních případech vrátí hodnotu řetězce ASCII v závislosti na znaku na dané pozici.
Strcpy (): na rozdíl od strcat nebude připojovat řetězec do jiných. nahradí veškerý obsah.
Příklad č. 7:
string str1 = “World is beautiful”;
string str2 = “Yes we can”;
string str3 = strcpy(str1, str2); // simply replace all the content in str1 with the content of str2
cout<< str3 <
Výstup: Ano, můžeme
Strlen (): Nejjednodušší funkce v řadě.
Tato funkce je definována v souboru záhlaví. Tato funkce vrací délku řetězce.
Délka řetězce je určena koncovým nulovým znakem na konci \ 0.
Příklad č. 8:
string str1 = "c++ is object oriented language";
int length = strlen(str1);
cout << "Length of str1 is : " << length << endl;
Výstup: 31
getline (): Funkce knihovny řetězců C ++ také poskytují funkci getline ke čtení celého řádku.
Tato funkce bere následující argumenty:
- Čte první argument jako stream.
- Za druhé, trvá vstupní řádek
- A zatřetí to zastaví těžbu
Příklad č. 9:
cout<<”What is your name: ”< string str1;
getline(cin, str1 '\n');
cout<< “your name is : ” << str1 << endl;cout<<”What is your name: ”< string str1;
getline(cin, str1 '\n');
cout<< “your name is : ” << str1 << endl;
Výstup: Jak se jmenujete: John
Vaše jméno je John
Jeden z nejužitečnějších datových typů dodávaných v knihovnách C ++ je řetězec.
Pro lepší pochopení řetězce musíte během učení kódovat. Bez psaní kódu nemůžeme získat skutečný koncept.
KNIHY:
- Balgurusami (objektově orientované programování s C ++)
- Objektově orientované programování v C ++ Robert Lafore (Vydavatel: Pearson)
Doporučené články
Toto byl průvodce funkcemi C ++ String. Zde jsme diskutovali, jak používat řetězcové funkce v programování v C ++ pomocí příkladů. Další informace naleznete také v dalších navrhovaných článcích -
- Úvod do C ++
- Příkazy C ++
- C ++ a C #
- Příklady řetězcových funkcí v Javě