Функція wcscmp () у C ++ порівнює два нульові закінчувальні широкі рядки. Порівняння проводиться лексикографічно.
Функція wcscmp () визначена у файлі заголовка.
прототип wcscmp ()
int wcscmp (const wchar_t * lhs, const wchar_t * rhs);
Функція wcscmp () приймає два аргументи: lhs та rhs. Він порівнює вміст lhs та rhs лексикографічно. Ознакою результату є ознака різниці між першими парами символів, які відрізняються за lhs і rhs.
Поведінка wcscmp () є невизначеною, якщо будь-який із lhs або rhs не вказує на широкі рядки, закінчені нулем.
wcscmp () Параметри
- lhs: вказівник на нульовий закінчений широкий рядок для порівняння.
- rhs: вказівник на нульовий закінчений широкий рядок для порівняння.
wcscmp () Повернене значення
Функція wcscmp () повертає:
- додатне значення, якщо перший символ, що відрізняється в lhs, більший, ніж відповідний символ у rhs.
- негативне значення, якщо перший символ, що відрізняється в lhs, менший за відповідний символ у rhs.
- 0, якщо lhs і rhs рівні.
Приклад: Як працює функція wcscmp ()?
#include #include #include using namespace std; void compare(wchar_t *lhs, wchar_t *rhs) ( int result; result = wcscmp(lhs, rhs); if(result> 0) wcout << rhs << " precedes " << lhs << endl; else if (result < 0) wcout << lhs << " precedes " << rhs << endl; else wcout << lhs << " and " << rhs << " are same" << endl; ) int main() ( setlocale(LC_ALL, "en_US.utf8"); wchar_t str1() = L"u0102u0070ple"; wchar_t str2() = L"u00c4u01f7ple"; wchar_t str3() = L"u00c4u01a4ple"; compare(str1,str2); compare(str2,str3); return 0; )
Коли ви запускаєте програму, результат буде:
ǷǷple передує plepple ƤƤple передує ǷǷple