Функція wmemcmp () в C ++ порівнює вказану кількість широких символів двох широких рядків.
Функція wmemcmp () визначена у файлі заголовка.
прототип wmemcmp ()
int wmemcmp (const wchar_t * lhs, const wchar_t * rhs, count_t count);
Функція wmemcmp () приймає три аргументи: lhs, rhs і count. Ця функція лексикографічно порівнює символи першого лічильника LHS та RHS.
Параметри wmemcmp ()
- lhs і rhs: вказівник на широкий масив символів для порівняння.
- count: Максимальна кількість широких символів для порівняння.
wmemcmp () Повернене значення
Функція wmemcmp () повертає:
- додатне значення, якщо перший різний широкий символ у lhs більше, ніж відповідний байт у rhs.
- негативне значення, якщо перший різний широкий символ у lhs менше, ніж відповідний байт у rhs.
- 0, якщо перші лічильники широких символів lhs та rhs рівні
Приклад: Як працює функція wmemcmp ()?
#include #include #include using namespace std; void compare(wchar_t *lhs, wchar_t *rhs, int count) ( int result = wmemcmp(lhs, rhs, count); if(result> 0) wcout << rhs << L" precedes " << lhs << endl; else if (result < 0) wcout << lhs << L" precedes " << rhs << endl; else wcout << L"First " << count << L" characters of " << lhs << L" and " << rhs << L" are same" << endl; ) int main() ( setlocale(LC_ALL, "en_US.utf8"); wchar_t lhs() = L"u0386u03a6u03aau03acu03c8u03c9u03ee"; wchar_t rhs() = L"u0386u03a6u03aau03acu03c0u03c7u03fb"; compare(lhs, rhs, 4); compare(lhs, rhs, 7); return 0; )
Коли ви запускаєте програму, результат буде:
Перші 4 символи ΆΦΪάψωϮ та ΆΦΪάπχϻ однакові ΆΦΪάπχϻ передує ΆΦΪάψωϮ