La función wcscoll () en C ++ compara dos cadenas terminadas en nulo. La comparación se basa en la configuración regional actual definida por la categoría LC_COLLATE.
La función wcscoll () se define en el archivo de encabezado.
prototipo de wcscoll ()
int wcscoll (const wchar_t * lhs, const wchar_t * rhs);
La función wcscoll () toma dos argumentos: lhs y rhs. Compara el contenido de lhs y rhs según la configuración regional actual de la categoría LC_COLLATE .
Parámetros de wcscoll ()
- lhs y rhs: puntero a las cadenas anchas terminadas en nulo para comparar.
wcscoll () Valor de retorno
La función wcscoll () devuelve:
- valor positivo si el primer carácter diferente en lhs es mayor que el carácter correspondiente en rhs.
- valor negativo si el primer carácter diferente en lhs es menor que el carácter correspondiente en rhs.
- 0 si lhs y rhs son iguales.
Ejemplo: ¿Cómo funciona la función 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; )
Cuando ejecute el programa, la salida será:
En la localidad americana: äpple precede a årtist En la localidad sueca: årtist precede a äpple