Funktionen wcscoll () i C ++ jämför två nollavslutade strängar. Jämförelsen baseras på den aktuella platsen definierad av kategorin LC_COLLATE.
Funktionen wcscoll () definieras i rubrikfilen.
wcscoll () prototyp
int wcscoll (const wchar_t * lhs, const wchar_t * rhs);
Funktionen wcscoll () tar två argument: lhs och rhs. Den jämför innehållet i lhs och rhs baserat på den aktuella platsen för LC_COLLATE- kategorin.
wcscoll () Parametrar
- lhs och rhs: pekaren till null avslutade breda strängar att jämföra.
wcscoll () Returvärde
Funktionen wcscoll () returnerar a:
- positivt värde om det första skiljetecknet i lhs är större än motsvarande tecken i rhs.
- negativt värde om det första skiljetecknet i lhs är mindre än motsvarande tecken i rhs.
- 0 om lhs och rhs är lika.
Exempel: Hur fungerar wcscoll () -funktionen?
#include #include #include using namespace std; void compare(const wchar_t* p1, const wchar_t* p2) ( if(wcscoll(p1, p2) < 0) wcout << p1 << L" precedes " << p2 < 0) wcout << p2 << L" precedes " << p1 << ''; else wcout << p2 << L" equals " << p1 << ''; ) int main() ( wchar_t str1() = L"årtist"; wchar_t str2() = L"äpple"; setlocale(LC_ALL, "en_US.utf8"); wcout << L"In the American locale: "; compare(str1, str2); setlocale(LC_ALL, "sv_SE.utf8"); wcout << L"In the Swedish locale: "; compare(str1, str2); return 0; )
När du kör programmet blir resultatet:
I det amerikanska språket: äpple föregår årtist På svenska språket: årtist föregår äpple