Funkcia wcscoll () v C ++ porovnáva dva reťazce zakončené nulou. Porovnanie je založené na aktuálnom miestnom prostredí definovanom v kategórii LC_COLLATE.
Funkcia wcscoll () je definovaná v hlavičkovom súbore.
prototyp wcscoll ()
int wcscoll (const wchar_t * lhs, const wchar_t * rhs);
Funkcia wcscoll () má dva argumenty: lhs a rhs. Porovnáva obsah lhs a rhs na základe aktuálneho miestneho nastavenia kategórie LC_COLLATE .
Parametre wcscoll ()
- lhs a rhs: Ukazovateľ na nulové ukončené široké reťazce na porovnanie.
wcscoll () Vrátená hodnota
Funkcia wcscoll () vracia a:
- kladná hodnota, ak je prvý odlišný znak v lhs väčší ako zodpovedajúci znak v rhs.
- záporná hodnota, ak je prvý odlišný znak v lhs menší ako zodpovedajúci znak v rhs.
- 0, ak sú lhs a rhs rovnaké.
Príklad: Ako funguje funkcia 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; )
Po spustení programu bude výstup:
V americkom jazyku: äpple predchádza årtist Vo švédskom jazyku: äpple predchádza äpple