Библиотека string в C++
Библиотека string
предоставляет удобные и мощные инструменты для работы со строками в языке программирования C++. Она позволяет легко создавать, изменять и преобразовывать строки.
Подключение библиотеки
Прежде всего, чтобы использовать функциональность библиотеки string
, нужно подключить ее в свой код. Для этого добавьте следующую директиву перед началом вашей программы:
#include <string>
Примечание
На самом деле все функции библиотеки string
содержатся в стандартной библиотеке, поэтому ее подключение не обязательно, но является хорошим тоном.
Создание и инициализация строк
Для создания строки используется класс string
. Давайте рассмотрим несколько способов создания и инициализации строк:
string str1; // пустая строка
string str2 = "Hello, world!"; // инициализация с использованием литерала (константного значения)
string str3("Welcome"); // инициализация с использованием конструктора
string str4(str2); // копирование строки str2 в новую строку str4
string str5(5, 'h'); // создания строки из повторяющихся символов (в данном случае str5 = "hhhhh")
Ввод строк с клавиатуры и вывод на экран
Для ввода строк с клавиатуры в C++, вы можете использовать объект класса getline
из библиотеки <string>
.
Пример кода для ввода строки и вывода ее на экран
#include <iostream>
#include <string>
using namespace std;
int main()
{
string input;
cout << "Введите строку: ";
getline(cin, input);
cout << "Вы ввели: " << input << endl;
return 0;
}
В этом примере:
- Мы включаем заголовочные файлы
<iostream>
и <string>
, чтобы иметь доступ к функциональности ввода-вывода и работы со строками.
- Создаем объект
input
типа string
, который будет содержать введенную строку.
- С помощью
cout
выводим приглашение для ввода строки.
- С помощью
getline(cin, input)
считываем строку, введенную пользователем, и сохраняем ее в переменной input
.
- Используя
cout
, выводим введенную строку на экран.
Обратите внимание, что getline
читает всю строку, включая пробелы, до нажатия клавиши Enter. Вводить строку можно и с помощью cin
, в данном случае будет считана строка только до первого пробела.