Compartilhar via


_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l

Compara os caracteres de duas cadeias de caracteres sem considerar o caso.

Importante

_mbsnicmpe _mbsnicmp_l não pode ser usado em aplicativos que são executados a Tempo de Execução do Windows.Para obter mais informações, consulte Funções de CRT sem suporte com /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
    Caracteres de terminação nula para comparar.

  • count
    Número de caracteres a ser comparado.

  • locale
    Localidade a usar.

Valor de retorno

Indica a relação entre as subcadeias de caracteres, da seguinte maneira.

Valor de retorno

Descrição

< 0

string1subcadeia de caracteres é menor que string2 subcadeia de caracteres.

0

string1subcadeia de caracteres é idêntica à string2 subcadeia de caracteres.

> 0

string1subcadeia de caracteres é maior que string2 subcadeia de caracteres.

Em um erro de validação de parâmetro, essas funções retornam _NLSCMPERROR, que é definido em < String. h > e < mbstring.h >.

Comentários

O _strnicmp função ordinalmente compara, no máximo, o primeiro count caracteres de string1 e string2. A comparação é executada sem considerar o caso, convertendo cada caractere em minúsculas. _strnicmpé uma versão de maiúsculas e minúsculas do strncmp. A comparação termina se um caractere nulo de terminação for atingido na cadeia de caracteres antes de count caracteres são comparados. Se as cadeias de caracteres são iguais quando um caractere nulo de terminação for alcançado na cadeia de caracteres antes de count caracteres são comparados, a cadeia de caracteres mais curta é menor.

Os caracteres de 91 a 96 na tabela ASCII ('[', ' \', ']', ' ^', '_' e ' ') avaliar como menor que qualquer caractere alfabético. Essa ordem é idêntico de stricmp.

_wcsnicmpe _mbsnicmp são versões de caractere largo e caracteres multibyte _strnicmp. Os argumentos de _wcsnicmp são cadeias de caracteres largos; aqueles de _mbsnicmp são cadeias de caracteres multibyte. _mbsnicmpreconhece sequências de caracteres multibyte de acordo com a página de código multibyte atual e retorna _NLSCMPERROR em caso de erro. Para obter mais informações, consulte Páginas de código. Essas três funções comportam idêntico caso contrário. Essas funções são afetadas pela configuração da localidade — as versões que não têm o _l sufixo usam a localidade atual para o seu comportamento depende da localidade; as versões que têm o _l sufixo em vez disso, use o locale que é passado. Para obter mais informações, consulte Localidade.

Todas essas funções validam seus parâmetros. Se qualquer um dos string1 ou string2 é um ponteiro nulo, o manipulador de parâmetro inválido é chamado, conforme descrito em Validação do parâmetro. Se a execução puder continuar, essas funções retornarão _NLSCMPERROR e definirão errno para EINVAL.

Mapeamentos da rotina de texto genérico

Rotina TCHAR.H

_UNICODE e _MBCS não definidos

_MBCS definido

_UNICODE definido

_tcsncicmp

_strnicmp

_mbsnicmp

_wcsnicmp

_tcsnicmp

_strnicmp

_mbsnbicmp

_wcsnicmp

_tcsncicmp_l

_strnicmp_l

_mbsnicmp_l

_wcsnicmp_l

Requisitos

Rotina

Cabeçalho necessário

_strnicmp, _strnicmp_l

<string.h>

_wcsnicmp, _wcsnicmp_l

<string.h> ou <wchar.h>

_mbsnicmp, _mbsnicmp_l

<mbstring.h>

Para obter informações adicionais sobre compatibilidade, consulte Compatibilidade.

Exemplo

Veja o exemplo de strncmp.

Equivalência do .NET Framework

System::String::Compare

Consulte também

Referência

Manipulação da cadeia de caracteres (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