Funkce wcscmp () v C ++ porovnává dva null ukončující široký řetězec. Porovnání se provádí lexikograficky.
Funkce wcscmp () je definována v hlavičkovém souboru.
prototyp wcscmp ()
int wcscmp (const wchar_t * lhs, const wchar_t * rhs);
Funkce wcscmp () má dva argumenty: lhs a rhs. Porovnává obsah lhs a rhs lexikograficky. Znamení výsledku je znamením rozdílu mezi prvními páry znaků, které se liší v lhs a rhs.
Chování wcscmp () není definováno, pokud ani lhs, ani rhs neukazují na null zakončené široké řetězce.
Parametry wcscmp ()
- lhs: Ukazatel na null zakončený široký řetězec k porovnání.
- rhs: Ukazatel na široký řetězec zakončený hodnotou null k porovnání.
wcscmp () Návratová hodnota
Funkce wcscmp () vrací a:
- kladná hodnota, pokud je první odlišný znak v lhs větší než odpovídající znak v rhs.
- záporná hodnota, pokud je první odlišný znak v lhs menší než odpovídající znak v rhs.
- 0, pokud jsou lhs a rhs stejné.
Příklad: Jak funguje funkce wcscmp ()?
#include #include #include using namespace std; void compare(wchar_t *lhs, wchar_t *rhs) ( int result; result = wcscmp(lhs, rhs); if(result> 0) wcout << rhs << " precedes " << lhs << endl; else if (result < 0) wcout << lhs << " precedes " << rhs << endl; else wcout << lhs << " and " << rhs << " are same" << endl; ) int main() ( setlocale(LC_ALL, "en_US.utf8"); wchar_t str1() = L"u0102u0070ple"; wchar_t str2() = L"u00c4u01f7ple"; wchar_t str3() = L"u00c4u01a4ple"; compare(str1,str2); compare(str2,str3); return 0; )
Když spustíte program, výstup bude:
ÄǷple předchází Ăpple ÄƤple předchází ÄǷple