Функція wcscoll () у C ++ порівнює два рядки, що закінчуються нулем. Порівняння базується на поточній локалі, визначеній категорією LC_COLLATE.
Функція wcscoll () визначена у файлі заголовка.
прототип wcscoll ()
int wcscoll (const wchar_t * lhs, const wchar_t * rhs);
Функція wcscoll () приймає два аргументи: lhs та rhs. Він порівнює вміст lhs та rhs на основі поточної локалі категорії LC_COLLATE .
Параметри wcscoll ()
- lhs і rhs: вказівник на нульові закінчені широкі рядки для порівняння.
wcscoll () Повернене значення
Функція wcscoll () повертає:
- додатне значення, якщо перший символ, що відрізняється в lhs, більший, ніж відповідний символ у rhs.
- негативне значення, якщо перший символ, що відрізняється в lhs, менший за відповідний символ у rhs.
- 0, якщо lhs і rhs рівні.
Приклад: Як працює функція 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; )
Коли ви запускаєте програму, результат буде:
В американській мові: äpple передує rtist В шведській мові: ärtist передує äpple