_strnicoll
, _wcsnicoll
, _mbsnicoll
, _strnicoll_l
, , _wcsnicoll_l
, _mbsnicoll_l
Compara cadenas usando información específica de la configuración regional.
Importante
_mbsnicoll
y _mbsnicoll_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 en aplicaciones de la Plataforma universal de Windows.
Sintaxis
int _strnicoll(
const char *string1,
const char *string2,
size_t count
);
int _wcsnicoll(
const wchar_t *string1,
const wchar_t *string2 ,
size_t count
);
int _mbsnicoll(
const unsigned char *string1,
const unsigned char *string2,
size_t count
);
int _strnicoll_l(
const char *string1,
const char *string2,
size_t count,
_locale_t locale
);
int _wcsnicoll_l(
const wchar_t *string1,
const wchar_t *string2 ,
size_t count,
_locale_t locale
);
int _mbsnicoll_l(
const unsigned char *string1,
const unsigned char *string2,
size_t count,
_locale_t locale
);
Parámetros
string1
, string2
Cadenas terminadas en NULL que se van a comparar
count
Número de caracteres 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 de las subcadenas de 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 |
Cada una de estas funciones devuelve _NLSCMPERROR
. Para usar _NLSCMPERROR
, incluya STRING.H o MBSTRING.H. _wcsnicoll
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, _wcsnicoll
puede establecer errno
en EINVAL
. Para comprobar si hay un error en una llamada a _wcsnicoll
, establezca errno
en 0 y observe errno
después de llamar a _wcsnicoll
.
Comentarios
Cada una de estas funciones realiza una comparación sin distinción entre mayúsculas y minúsculas de los primeros count
caracteres de string1
y string2
según la página de códigos. Estas funciones solo se deben usar cuando hay una diferencia entre el orden del juego de caracteres y el orden de caracteres lexicográfico en la página de códigos y esta diferencia es de interés para la comparación de cadenas. Las versiones de estas funciones sin el sufijo _l
usan la configuración regional y la página de códigos actuales. Las versiones con el _l
sufijo son idénticas, salvo que usan la configuración regional que se pasa en su lugar. Para obtener más información, vea Locale.
Todas estas funciones validan sus parámetros. Si o string1
string2
es un puntero nulo, o si count es mayor que INT_MAX
, se invoca al 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
.
De manera predeterminada, el estado global de esta función está limitado a la aplicación. Para cambiar este comportamiento, consulte Estado global en CRT.
Asignaciones de rutinas de texto genérico
Rutina TCHAR.H | _UNICODE y _MBCS no definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tcsncicoll |
_strnicoll |
_mbsnbicoll |
_wcsnicoll |
_tcsnicoll |
_strnicoll |
_mbsnbicoll |
_wcsnicoll |
_tcsnicoll_l |
_strnicoll_l |
_mbsnbicoll_l |
_wcsnicoll_l |
Requisitos
Routine | Encabezado necesario |
---|---|
_strnicoll , _strnicoll_l |
<string.h> |
_wcsnicoll , _wcsnicoll_l |
<wchar.h> o <string.h> |
_mbsnicoll , _mbsnicoll_l |
<mbstring.h> |
Para obtener más información sobre compatibilidad, consulte Compatibilidad.
Consulte también
Configuración regional
Manipulación de cadenas
Funciones strcoll
localeconv
_mbsnbcoll
, _mbsnbcoll_l
, , _mbsnbicoll
, _mbsnbicoll_l
setlocale
, _wsetlocale
strcmp
, , wcscmp
, _mbscmp
_stricmp
, _wcsicmp
, _mbsicmp
, _stricmp_l
, , _wcsicmp_l
, _mbsicmp_l
strncmp
, wcsncmp
, , _mbsncmp
, _mbsncmp_l
_strnicmp
, _wcsnicmp
, _mbsnicmp
, _strnicmp_l
, , _wcsnicmp_l
, _mbsnicmp_l
strxfrm
, wcsxfrm
, , _strxfrm_l
, _wcsxfrm_l