Funktionen wcscmp () i C ++ sammenligner to nulterminerende brede strenge. Sammenligningen foretages leksikografisk.
Funktionen wcscmp () er defineret i header-fil.
wcscmp () prototype
int wcscmp (const wchar_t * lhs, const wchar_t * rhs);
Funktionen wcscmp () tager to argumenter: lhs og rhs. Det sammenligner indholdet af lhs og rhs leksikografisk. Resultatet er tegnet på forskellen mellem de første par tegn, der adskiller sig i lhs og rhs.
Opførelsen af wcscmp () er udefineret, hvis en af lhs eller rhs ikke peger på null-afsluttede brede strenge.
wcscmp () Parametre
- lhs: Markør til den null-afsluttede brede streng for at sammenligne.
- rhs: Markør til den null afsluttede brede streng for at sammenligne.
wcscmp () Returværdi
Funktionen wcscmp () returnerer en:
- positiv værdi, hvis den første forskellige karakter i lhs er større end den tilsvarende karakter i rhs.
- negativ værdi, hvis den første forskellige karakter i lhs er mindre end den tilsvarende karakter i rhs.
- 0, hvis lhs og rhs er ens.
Eksempel: Hvordan fungerer wcscmp () -funktionen?
#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; )
Når du kører programmet, vil output være:
ÄǷple går forud for Äpple ÄƤple går forud for ÄǷple