wcscmp
|
Определено в заголовочном файле
<wchar.h>
|
||
|
int
wcscmp
(
const
wchar_t
*
lhs,
const
wchar_t
*
rhs
)
;
|
(начиная с C95) | |
Сравнивает две широкие строки с нулевым завершением лексикографически.
Знак результата — это знак разности между значениями первой пары широких символов, которые различаются в сравниваемых строках.
Поведение не определено, если lhs или rhs не являются указателями на широкие строки с нулевым завершением.
Содержание |
Параметры
| lhs, rhs | - | указатели на нуль-терминированные широкие строки для сравнения |
Возвращаемое значение
Отрицательное значение, если lhs появляется перед rhs в лексикографическом порядке.
Ноль, если lhs и rhs равны при сравнении.
Положительное значение, если lhs появляется после rhs в лексикографическом порядке.
Примечания
Эта функция не зависит от локали, в отличие от wcscoll , и порядок может не иметь смысла, когда символы из разных блоков Юникода используются вместе или когда порядок кодовых единиц не соответствует никакому порядку сортировки.
Пример
#include <locale.h> #include <stdio.h> #include <wchar.h> void demo(const wchar_t* lhs, const wchar_t* rhs) { int rc = wcscmp(lhs, rhs); const char *rel = rc < 0 ? "precedes" : rc > 0 ? "follows" : "equals"; setlocale(LC_ALL, "en_US.utf8"); printf("[%ls] %s [%ls]\n", lhs, rel, rhs); } int main(void) { const wchar_t* string = L"どうもありがとうございます"; demo(string, L"どうも"); demo(string, L"助かった"); demo(string + 9, L"ありがとうございます" + 6); }
Возможный вывод:
[どうもありがとうございます] follows [どうも] [どうもありがとうございます] precedes [助かった] [ざいます] equals [ざいます]
Ссылки
- Стандарт C23 (ISO/IEC 9899:2024):
-
- 7.29.4.4.1 Функция wcscmp (стр.: TBD)
- Стандарт C17 (ISO/IEC 9899:2018):
-
- 7.29.4.4.1 Функция wcscmp (стр.: TBD)
- Стандарт C11 (ISO/IEC 9899:2011):
-
- 7.29.4.4.1 Функция wcscmp (стр: 433)
- Стандарт C99 (ISO/IEC 9899:1999):
-
- 7.24.4.4.1 Функция wcscmp (стр: 379)
Смотрите также
|
(C95)
|
сравнивает определённое количество символов из двух широких строк
(функция) |
|
(C95)
|
сравнивает определённое количество широких символов из двух массивов
(функция) |
|
сравнивает две строки
(функция) |
|
|
(C95)
|
сравнивает две широкие строки в соответствии с текущей локалью
(функция) |
|
Документация C++
для
wcscmp
|
|