Funcția wcscoll () din C ++ compară două șiruri terminate nule. Comparația se bazează pe localizarea curentă definită de categoria LC_COLLATE.
Funcția wcscoll () este definită în fișierul antet.
wcscoll () prototip
int wcscoll (const wchar_t * lhs, const wchar_t * rhs);
Funcția wcscoll () ia două argumente: lhs și rhs. Compară conținutul lhs și rhs pe baza setărilor locale curente din categoria LC_COLLATE .
wcscoll () Parametri
- lhs și rhs: Pointer la șirurile largi terminate null pentru a compara.
wcscoll () Valoare returnată
Funcția wcscoll () returnează un:
- valoare pozitivă dacă primul caracter diferit din lhs este mai mare decât caracterul corespunzător din rhs.
- valoare negativă dacă primul caracter diferit din lhs este mai mic decât caracterul corespunzător din rhs.
- 0 dacă lhs și rhs sunt egale.
Exemplu: Cum funcționează funcția wcscoll ()?
#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; )
Când rulați programul, ieșirea va fi:
În limba locală americană: äpple precede årtist În limba locală suedeză: årtist precede äpple