Функцията wmemcmp () в C ++ сравнява определен брой широки символи на два широки низа.
Функцията wmemcmp () е дефинирана в заглавния файл.
прототип на wmemcmp ()
int wmemcmp (const wchar_t * lhs, const wchar_t * rhs, размер_t брой);
Функцията 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 знака на ΆΦΪάψωϮ и ΆΦΪάπχϻ са еднакви ΆΦΪάπχϻ предшества ΆΦΪάψωϮ