Funkcia wcsncmp () v C ++ porovnáva zadaný počet širokých znakov dvoch nulových koncových širokých reťazcov. Porovnanie sa robí lexikograficky.
Funkcia wcsncmp () je definovaná v hlavičkovom súbore.
prototyp wcsncmp ()
int wcsncmp (const wchar_t * lhs, const wchar_t * rhs, počet_veľkosti);
Funkcia wcsncmp () má dva argumenty: lhs, rhs a count. Porovnáva obsah lhs a rhs lexikograficky až do maximálneho počtu širokých znakov.
Znak výsledku je znakom rozdielu medzi prvými pármi širokých znakov, ktoré sa líšia v lhs a rhs.
Chovanie wcsncmp () je nedefinované, ak ani jeden z lhs ani rhs neukazujú na široké reťazce zakončené nulou.
Parametre wcsncmp ()
- lhs: Ukazovateľ na jeden zo širokých reťazcov s nulovým zakončením na porovnanie.
- rhs: Ukazovateľ na jeden zo širokých reťazcov s nulovým zakončením na porovnanie.
- počet: Maximálny počet širokých znakov na porovnanie.
wcsncmp () Vrátená hodnota
Funkcia wcsncmp () vracia a:
- kladná hodnota, ak je prvý rozdielny široký znak v lhs väčší ako zodpovedajúci široký znak v rhs.
- záporná hodnota, ak je prvý rozdielny široký znak v lhs menší ako zodpovedajúci široký znak v rhs.
- 0, ak je prvý počet širokých znakov lhs a rhs rovnaký.
Príklad: Ako funguje funkcia wcsncmp ()?
#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őļŌģƔ