Функција вмемцмп () у Ц ++ упоређује одређени број широких знакова две широке жице.
Функција вмемцмп () је дефинисана у датотеци заглавља.
прототип вмемцмп ()
инт вмемцмп (цонст вцхар_т * лхс, цонст вцхар_т * рхс, сизе_т цоунт);
Функција вмемцмп () узима три аргумента: лхс, рхс и цоунт. Ова функција лексикографски упоређује прве бројеве широких бројева лхс и рхс.
вмемцмп () Параметри
- лхс и рхс: показивач на широки низ знакова за упоређивање.
- цоунт: Максималан број широких знакова за упоређивање.
вмемцмп () Повратна вредност
Функција вмемцмп () враћа:
- позитивна вредност ако је први различити широки знак у лхс већи од одговарајућег бајта у рхс.
- негативна вредност ако је први различити широки знак у лхс мањи од одговарајућег бајта у рхс.
- 0 ако су први бројеви широких знакова лхс и рхс једнаки
Пример: Како функционише функција вмемцмп ()?
#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 знака ΑΦΙαψωϮ и ΑΦΙαπχϻ су иста ΑΦΙαπχϻ претходи ΑΦΙαψωϮ