C ++ wmemcmp () - C ++ standardowa biblioteka

Funkcja wmemcmp () w C ++ porównuje określoną liczbę szerokich znaków dwóch szerokich ciągów.

Funkcja wmemcmp () jest zdefiniowana w pliku nagłówkowym.

Prototyp wmemcmp ()

 int wmemcmp (const wchar_t * lhs, const wchar_t * rhs, size_t count);

Funkcja wmemcmp () przyjmuje trzy argumenty: lhs, rhs i count. Ta funkcja porównuje leksykograficznie pierwszy licznik szerokich znaków z lewej i prawej strony.

wmemcmp () Parametry

  • lhs and rhs: Wskaźnik do szerokiej tablicy znaków do porównania.
  • count: maksymalna liczba szerokich znaków do porównania.

wmemcmp () Wartość zwracana

Funkcja wmemcmp () zwraca:

  • wartość dodatnia, jeśli pierwszy różniący się szeroki znak w lhs jest większy niż odpowiadający mu bajt w prawostronnych.
  • wartość ujemna, jeśli pierwszy różniący się szeroki znak w lhs jest mniejszy niż odpowiadający mu bajt w prawostronnych.
  • 0, jeśli pierwsza liczba szerokich znaków z lewej i prawej strony jest równa

Przykład: Jak działa funkcja 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; )

Po uruchomieniu programu wynik będzie następujący:

 Pierwsze 4 znaki ΆΦΪάψωϮ i ΆΦΪάπχϻ są takie same ΆΦΪάπχϻ poprzedza ΆΦΪάψωϮ

Interesujące artykuły...