Funkce wcsncmp () v C ++ porovnává zadaný počet širokých znaků dvou null ukončujících širokých řetězců. Porovnání se provádí lexikograficky.
Funkce wcsncmp () je definována v hlavičkovém souboru.
prototyp wcsncmp ()
int wcsncmp (const wchar_t * lhs, const wchar_t * rhs, velikost_t počet);
Funkce wcsncmp () má dva argumenty: lhs, rhs a count. Porovnává obsah lhs a rhs lexikograficky až do maximálního počtu širokých znaků.
Znaménkem výsledku je znaménko rozdílu mezi prvními páry širokých znaků, které se liší v lhs a rhs.
Chování wcsncmp () je nedefinováno, pokud lhs nebo rhs neukazují na široké řetězce zakončené null.
Parametry wcsncmp ()
- lhs: Ukazatel na jeden z null zakončených širokých řetězců pro srovnání.
- rhs: Ukazatel na jeden z null zakončených širokých řetězců k porovnání.
- count: Maximální počet širokých znaků k porovnání.
wcsncmp () Návratová hodnota
Funkce wcsncmp () vrací a:
- kladná hodnota, pokud je první odlišný široký znak v lhs větší než odpovídající široký znak v rhs.
- záporná hodnota, pokud je první odlišný široký znak v lhs menší než odpovídající široký znak v rhs.
- 0, pokud je první počet širokých znaků lhs a rhs stejný.
Příklad: Jak funguje funkce 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őļŌģƔ