Compartir a través de


_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l

Compara los caracteres de dos cadenas sin distinción entre mayúsculas y minúsculas.

Importante

_mbsnicmp y _mbsnicmp_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 _strnicmp(    const char *string1,    const char *string2,    size_t count  ); int _wcsnicmp(    const wchar_t *string1,    const wchar_t *string2,    size_t count  ); int _mbsnicmp(    const unsigned char *string1,    const unsigned char *string2,    size_t count  ); int _strnicmp_l(    const char *string1,    const char *string2,    size_t count,    _locale_t locale ); int _wcsnicmp_l(    const wchar_t *string1,    const wchar_t *string2,    size_t count,    _locale_t locale ); int _mbsnicmp_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

Indica la relación entre las subcadenas, como se muestra a continuación.

Valor devuelto

Descripción 

< 0

La subcadena string1 es menor que la subcadena string2.

0

La subcadena string1 es idéntica a la subcadena string2.

> 0

La subcadena string1 es mayor que la subcadena string2.

Si se produce un error de validación de parámetros, estas funciones devuelven _NLSCMPERROR, que se define en <string.h> y <mbstring.h>.

Comentarios

La función _strnicmp compara ordinalmente, a lo sumo, los primeros count caracteres de string1 y string2. La comparación se realiza sin distinguir entre mayúsculas y minúsculas, ya que todos los caracteres se convierten a minúsculas. _strnicmp es una versión sin distinción entre mayúsculas y minúsculas de strncmp. La comparación finaliza si se llega a un carácter nulo de terminación en una de las cadenas antes de que se comparen count caracteres. Si las cadenas son iguales cuando se llega a un carácter nulo de terminación en una de las cadenas antes de que se comparen count caracteres, la cadena más corta es menor.

Los caracteres 91 a 96 en la tabla ASCII ("[", "\", "]", "^", "_" y "`") se consideran menores que cualquier carácter alfabético. Esta ordenación es idéntica a la de stricmp.

_wcsnicmp y _mbsnicmp son versiones de caracteres anchos y multibyte de _strnicmp. Los argumentos de _wcsnicmp son cadenas de caracteres anchos; los de _mbsnicmp son cadenas de caracteres multibyte. _mbsnicmp reconoce secuencias de caracteres multibyte según la página actual de códigos multibyte y devuelve _NLSCMPERROR cuando se produce un error. Para obtener más información, consulta Páginas de códigos. Estas tres funciones se comportan exactamente igual. Estas funciones se ven afectadas por la configuración regional. Las versiones que no tienen el sufijo _l usan la configuración regional local para el comportamiento que depende de la configuración regional; las versiones que sí tienen el sufijo _l utilizan la locale pasada. Para obtener más información, consulta Configuración regional.

Todas estas funciones validan sus parámetros. Si string1 o string2 es un puntero nulo, 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

_tcsncicmp

_strnicmp

_mbsnicmp

_wcsnicmp

_tcsnicmp

_strnicmp

_mbsnbicmp

_wcsnicmp

_tcsncicmp_l

_strnicmp_l

_mbsnicmp_l

_wcsnicmp_l

Requisitos

Rutina

Encabezado necesario

_strnicmp, _strnicmp_l

<string.h>

_wcsnicmp, _wcsnicmp_l

<string.h> o <wchar.h>

_mbsnicmp, _mbsnicmp_l

<mbstring.h>

Para obtener información adicional de compatibilidad, vea Compatibilidad.

Ejemplo

Vea el ejemplo de strncmp.

Equivalente en .NET Framework

System::String::Compare

Vea también

Referencia

Manipulación de cadenas (CRT)

strcat, wcscat, _mbscat

strcmp, wcscmp, _mbscmp

strcpy, wcscpy, _mbscpy

strncat, _strncat_l, wcsncat, _wcsncat_l, _mbsncat, _mbsncat_l

strncmp, wcsncmp, _mbsncmp, _mbsncmp_l

strncpy, _strncpy_l, wcsncpy, _wcsncpy_l, _mbsncpy, _mbsncpy_l

strrchr, wcsrchr, _mbsrchr, _mbsrchr_l

_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l

strspn, wcsspn, _mbsspn, _mbsspn_l