Функција вцснцмп () у Ц ++ упоређује одређени број широких знакова два нула која завршавају широке низове. Поређење се врши лексикографски.
Функција вцснцмп () је дефинисана у датотеци заглавља.
прототип вцснцмп ()
инт вцснцмп (цонст вцхар_т * лхс, цонст вцхар_т * рхс, сизе_т цоунт);
Функција вцснцмп () узима два аргумента: лхс, рхс и цоунт. Лексикографски упоређује садржај лхс и рхс до максимално броја бројева.
Знак резултата је знак разлике између првих парова широких знакова који се разликују у лхс и рхс.
Понашање вцснцмп () је недефинисано ако било који од лхс или рхс не упућује на нулто завршене широке низове.
вцснцмп () Параметри
- лхс: Показивач на један од нулто завршених широких низова за упоређивање.
- рхс: Показивач на један од нулто завршених широких низова за упоређивање.
- цоунт: Максималан број широких знакова за упоређивање.
вцснцмп () Повратна вредност
Функција вцснцмп () враћа:
- позитивна вредност ако је први различити широки знак у лхс већи од одговарајућег широког карактера у рхс.
- негативна вредност ако је први различити широки знак у лхс мањи од одговарајућег широког карактера у рхс.
- 0 ако су први бројеви широких знакова лхс и рхс једнаки.
Пример: Како функционише функција вцснцмп ()?
#include #include #include using namespace std; void compare(wchar_t *lhs, wchar_t *rhs, int count) ( int result; result = wcsncmp(lhs, rhs, count); if(result> 0) wcout << rhs << " precedes " << lhs << endl; else if (result < 0) wcout << lhs << " precedes " << rhs << endl; else wcout << L"First " << count << L" characters of " << lhs << L" and " << rhs <
When you run the program, the output will be:
First 4 characters of ŦēċħʼnőļŌģƔ and Ŧēċħnology are same Ŧēċħnology precedes ŦēċħʼnőļŌģƔ