Строки в C++

НАВИГАЦИЯ ПО СТРАНИЦЕ

Создание и инициализация строк Доступ к символам строки Ввод и вывод строк Манипуляция строками Преобразование строк Использование строк в циклах

В C++, строки представлены стандартным классом std::string, который является частью стандартной библиотеки. Вот основные аспекты работы со строками в C++:

Создание и инициализация строк:

#include <string>

// Создание строки
std::string str1; // Пустая строка

// Инициализация строки при объявлении
std::string str2 = "Hello, World!";

// Инициализация строки из массива символов
const char charArray[] = "C++ Strings";
std::string str3(charArray);

// Конкатенация строк
std::string combined = str2 + " " + str3;

Доступ к символам строки:

// Получение длины строки
int length = str2.length(); // или str2.size()

// Получение символа по индексу
char firstChar = str2[0]; // Первый символ

// Изменение символа по индексу
str2[0] = 'h'; // Замена первого символа

Ввод и вывод строк:

#include <iostream>

// Ввод строки с клавиатуры
std::string input;
std::cout << "Enter a string: ";
std::getline(std::cin, input); // getline читает всю строку, включая пробелы

// Вывод строки в консоль
std::cout << "You entered: " << input << std::endl;

Манипуляция строками:

// Добавление символов в конец строки
str2.append(" Welcome");

// Извлечение подстроки
std::string substring = str2.substr(0, 5); // Извлечение первых 5 символов

// Поиск подстроки
size_t found = str2.find("World");

// Замена подстроки
str2.replace(found, 5, "Universe");

Преобразование строк в другие типы:

#include <sstream>

// Преобразование строки в число
int num = std::stoi("123");

// Преобразование числа в строку
std::string strNum = std::to_string(456);

// Преобразование строки в поток и обратно
std::istringstream iss("123");
int convertedNum;
iss >> convertedNum;

Использование строк в циклах:

// Итерация по символам строки
for (char ch : str2) {
    std::cout << ch << " ";
}

// Итерация по символам строки с использованием индексов
for (int i = 0; i < str2.length(); ++i) {
    std::cout << str2[i] << " ";
}

Строки в C++ предоставляют богатый набор методов и операторов для работы с текстовыми данными. Использование класса std::string облегчает многие задачи, связанные с манипуляциями строками в языке C++.