Funcția wmemcmp () din C ++ compară un număr specificat de caractere largi din două șiruri largi.
Funcția wmemcmp () este definită în fișierul antet.
wmemcmp () prototip
int wmemcmp (const wchar_t * lhs, const wchar_t * rhs, size_t count);
Funcția wmemcmp () ia trei argumente: lhs, rhs și count. Această funcție compară lexicografic primul număr de caractere largi ale lhs și rhs.
wmemcmp () Parametri
- lhs și rhs: Pointer către matricea largă de caractere pentru a compara.
- număr: număr maxim de caractere largi de comparat.
wmemcmp () Valoare returnată
Funcția wmemcmp () returnează un:
- valoare pozitivă dacă primul caracter larg diferit din lhs este mai mare decât octetul corespunzător din rhs.
- valoare negativă dacă primul caracter larg diferit din lhs este mai mic decât octetul corespunzător din rhs.
- 0 dacă primul număr de caractere largi de lhs și rhs sunt egale
Exemplu: Cum funcționează funcția 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; )
Când rulați programul, ieșirea va fi:
Primele 4 caractere ale lui ΆΦΪάψωϮ și ΆΦΪάπχϻ sunt aceleași ΆΦΪάπχϻ precede ΆΦΪάψωϮ