Menu
Coddy logo textTech

Сравнение строк

Часть раздела Основы путешествия по C++ на Coddy. Урок 22 из 74.

В C++ сравнивать строки можно несколькими способами. Поскольку std::string — это класс, у него есть перегруженные операторы, которые делают сравнение строк интуитивным и простым.

Самый распространённый способ сравнивать строки — использовать операторы сравнения (==, !=, <, >, <=, >=):

string str1 = "hello";
string str2 = "hello";
string str3 = "Hello";

bool result1 = (str1 == str2);  // true
bool result2 = (str1 == str3);  // false (с учётом регистра)
bool result3 = (str1 != str3);  // true

Также можно использовать метод compare(), который возвращает 0, если strings равны, отрицательное целое число, если первая string лексикографически меньше, и положительное целое число, если она больше. Обратите внимание, что точное значение определяется реализацией. Это не обязательно -1 или 1:

string str1 = "a";
string str2 = "b";
string str3 = "c";

cout << str2.compare(str1) << endl; 
// Положительное (b идёт после a)

cout << str2.compare(str3) << endl;
// Отрицательное (b идёт перед c)

cout << str2.compare(str2) << endl;
// 0 (равные строки)

Попробуйте сами

В этом уроке нет задания по программированию.

quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор C++