В этом уроке мы рассмотрим строки в C++ и как работать с классом std::string
. Строки являются важной частью любого языка программирования, и C++ не исключение. Они позволяют работать с текстовой информацией, что открывает множество возможностей для разработки приложений.
Создание и инициализация строк
Для работы со строками в C++ используется стандартный класс std::string
, который предоставляет множество методов для работы с текстом. Начнем с создания и инициализации строк:
#include <iostream>
#include <string>
int main() {
std::string str1 = "Hello, World!";
std::string str2("Welcome to C++!");
std::string str3;
str3 = "This is a string.";
std::cout << str1 << std::endl;
std::cout << str2 << std::endl;
std::cout << str3 << std::endl;
return 0;
}
В этом примере мы создали три строки разными способами и вывели их на экран. Результат выполнения программы будет следующим:
Hello, World!
Welcome to C++!
This is a string.
Конкатенация строк
Одной из основных операций со строками является их объединение, или конкатенация. В C++ это можно сделать с помощью оператора +
:
#include <iostream>
#include <string>
int main() {
std::string firstName = "John";
std::string lastName = "Doe";
std::string fullName = firstName + " " + lastName;
std::cout << "Full Name: " << fullName << std::endl;
return 0;
}
Результат выполнения этой программы будет следующим:
Full Name: John Doe
Доступ к символам строки
Для доступа к отдельным символам строки можно использовать оператор []
или метод at()
:
#include <iostream>
#include <string>
int main() {
std::string str = "Hello";
std::cout << "First character: " << str[0] << std::endl;
std::cout << "Last character: " << str.at(str.size() - 1) << std::endl;
return 0;
}
Результат выполнения этой программы:
First character: H
Last character: o
Размер строки и проверка на пустоту
Для получения длины строки используется метод size()
или length()
. Чтобы проверить, пуста ли строка, применяется метод empty()
:
#include <iostream>
#include <string>
int main() {
std::string str = "Hello, World!";
std::cout << "Length of string: " << str.size() << std::endl;
std::cout << "Is string empty? " << std::boolalpha << str.empty() << std::endl;
return 0;
}
Результат выполнения:
Length of string: 13
Is string empty? false
Изменение строки
В C++ строки можно изменять после их создания. Рассмотрим примеры добавления и удаления символов:
#include <iostream>
#include <string>
int main() {
std::string str = "Hello";
str += ", World!";
std::cout << str << std::endl;
str.erase(5, 7);
std::cout << str << std::endl;
str.insert(5, ", C++");
std::cout << str << std::endl;
return 0;
}
Результат выполнения программы:
Hello, World!
Hello!
Hello, C++!
Задание для самостоятельной работы
Методов у строк много, поэтому для самостоятельной работы можно использовать std::string .
Напишите программу, которая запрашивает у пользователя строку, а затем выполняет следующие операции:
- Выводит строку в верхнем регистре.
- Выводит строку в нижнем регистре.
- Выводит первую и последнюю буквы строки.
- Проверяет, является ли строка палиндромом.
Пример работы программы:
Введите строку: Hello, World!
Строка в верхнем регистре: HELLO, WORLD!
Строка в нижнем регистре: hello, world!
Первая буква: H
Последняя буква: !
Строка не является палиндромом
Введите строку: madam
Строка в верхнем регистре: MADAM
Строка в нижнем регистре: madam
Первая буква: m
Последняя буква: m
Строка является палиндромом
Заключение
В этом уроке мы рассмотрели основные операции со строками в C++. Мы узнали, как создавать и инициализировать строки, объединять их, получать доступ к отдельным символам, изменять строки и проверять их на пустоту. В следующем уроке мы углубимся в более сложные операции и методы класса std::string
.