_stricoll, _wcsicoll, _mbsicoll, _stricoll_l, _wcsicoll_l, _mbsicoll_l
Compara cadenas usando información específica de la configuración regional.
Importante
_mbsicoll y _mbsicoll_l no se pueden usar en aplicaciones que se ejecutan en Windows en tiempo de ejecución.Para obtener más información, vea Funciones de CRT no admitidas con /ZW.
int _stricoll(
const char *string1,
const char *string2
);
int _wcsicoll(
const wchar_t *string1,
const wchar_t *string2
);
int _mbsicoll(
const unsigned char *string1,
const unsigned char *string2
);
int _stricoll_l(
const char *string1,
const char *string2,
_locale_t locale
);
int _wcsicoll_l(
const wchar_t *string1,
const wchar_t *string2,
_locale_t locale
);
int _mbsicoll_l(
const unsigned char *string1,
const unsigned char *string2,
_locale_t locale
);
Parámetros
string1, string2
Cadenas terminadas en NULL que se van a comparar.locale
Configuración regional que se va a usar.
Valor devuelto
Cada una de estas funciones devuelve un valor que indica la relación entre string1 y string2*,* como se indica a continuación.
Valor devuelto |
Relación de string1 y string2 |
---|---|
< 0 |
string1 es menor que string2 |
0 |
string1 es idéntica a string2 |
> 0 |
string1 es mayor que string2 |
_NLSCMPERROR |
Error. |
Cada una de estas funciones devuelve _NLSCMPERROR. Para usar _NLSCMPERROR, incluya STRING.H o MBSTRING.H. _wcsicoll puede producir un error si string1 o string2 contiene códigos de caracteres anchos fuera del dominio de la secuencia de intercalación. Cuando se produce un error, _wcsicoll puede establecer errno en EINVAL. Para comprobar si hay un error en una llamada a _wcsicoll, establezca errno en 0 y observe errno después de llamar a _wcsicoll.
Comentarios
Cada una de estas funciones compara, sin distinción entre mayúsculas y minúsculas, string1 con string2, de acuerdo con la página de códigos actualmente en uso. Estas funciones solo se deben usar cuando el orden del juego de caracteres y el orden de los caracteres lexicográficos son distintos en la página de códigos actual, y la diferencia influye en la comparación de cadenas.
_stricmp se diferencia de _stricoll en que la comparación _stricmp se ve afectada por LC_CTYPE, mientras que la comparación _stricoll se realiza en función de las categorías LC_CTYPE y LC_COLLATE de la configuración regional. Para obtener más información sobre la categoría LC_COLLATE, vea setlocale y Categorías de configuración regional. Las versiones de estas funciones sin el sufijo _l usan la configuración regional actual; las versiones con el sufijo _l son idénticas salvo que usan el parámetro de configuración regional que se pasa. Para obtener más información, vea Configuración regional.
Todas estas funciones validan sus parámetros. Si string1 o string2 es un puntero a NULL, se invoca el controlador de parámetros no válidos, como se describe en Validación de parámetros. Si la ejecución puede continuar, estas funciones devuelven _NLSCMPERROR y establecen errno en EINVAL.
Asignaciones de rutina de texto genérico
Rutina TCHAR.H |
_UNICODE y _MBCS no definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tcsicoll |
_stricoll |
_mbsicoll |
_wcsicoll |
Requisitos
Rutina |
Encabezado necesario |
---|---|
_stricoll, _stricoll_l |
<string.h> |
_wcsicoll, _wcsicoll_l |
<wchar.h>, <string.h> |
_mbsicoll, _mbsicoll_l |
<mbstring.h> |
Para obtener más información sobre compatibilidad, vea Compatibilidad.
Equivalente en .NET Framework
Vea también
Referencia
_mbsnbcoll, _mbsnbcoll_l, _mbsnbicoll, _mbsnbicoll_l
_stricmp, _wcsicmp, _mbsicmp, _stricmp_l, _wcsicmp_l, _mbsicmp_l
strncmp, wcsncmp, _mbsncmp, _mbsncmp_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l