Spec-Zone.ru › C++

std::wcscmp

Определено в заголовке <cwchar>
int wcscmp( const wchar_t* lhs, const wchar_t* rhs );

Сравнивает две нуль-терминированные широкие строки лексикографически.

Знак результата — знак разницы между значениями первой пары широких символов, которые отличаются в сравниваемых строках.

Поведение не определено, если lhs или rhs не являются указателями на нуль-терминированные широкие строки.

Параметры

lhs, rhs - указатели на нуль-терминированные широкие строки для сравнения

Возвращаемое значение

Отрицательное значение, если lhs предшествует rhs в лексикографическом порядке.

Ноль, если lhs и rhs равны при сравнении.

Положительное значение, если lhs следует за rhs в лексикографическом порядке.

Примечания

Эта функция не чувствительна к локали, в отличие от std::wcscoll, и порядок может не иметь смысла, когда используются символы из разных блоков Юникода или когда порядок кодовых единиц не соответствует порядку сортировки.

Пример

#include <algorithm>
#include <cwchar>
#include <iostream>
#include <vector>
 
int main()
{
    std::vector<const wchar_t*> leaders{L"Ленин", L"Сталин", L"Маленков",
        L"Хрущёв", L"Брежнев", L"Андропов", L"Черненко", L"Горбачёв"};
 
    std::ranges::sort(leaders, [](auto leaderLHS, auto leaderRHS)
    {
        return std::wcscmp(leaderLHS, leaderRHS) < 0;
    });
 
    std::setlocale(LC_ALL, "en_US.utf8");
    std::wcout.imbue(std::locale("en_US.utf8"));
    for (auto leader : leaders)
        std::wcout << leader << '\n';
}

Возможный вывод:

Андропов
Брежнев
Горбачёв
Ленин
Маленков
Сталин
Хрущёв
Черненко

См. также

wcsncmp
сравнивает определённое количество символов из двух широких строк
(функция)
wmemcmp
сравнивает определённое количество широких символов из двух массивов
(функция)
strcmp
сравнивает две строки
(функция)
wcscoll
сравнивает две широкие строки в соответствии с текущей локалью
(функция)
C документация для wcscmp

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/string/wide/wcscmp

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API