_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
Consulte também
Referência
Manipulação da cadeia de caracteres (CRT)
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