_strnicmp
, _wcsnicmp
, _mbsnicmp
, _strnicmp_l
, _wcsnicmp_l
, _mbsnicmp_l
Compara o número especificado de caracteres de duas cadeias de caracteres sem considerar o caso.
Importante
_mbsnicmp
e _mbsnicmp_l
não podem ser usados em aplicativos executados no Windows Runtime. Para obter mais informações, confira Funções do CRT sem suporte em aplicativos da Plataforma Universal do Windows.
Sintaxe
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
Cadeias de caracteres com terminação nula.
count
O número de caracteres a serem comparados.
locale
Localidade a usar.
Retornar valor
Indica a relação entre as subcadeias de caracteres, da seguinte maneira.
Retornar valor | Descrição |
---|---|
< 0 | A subcadeia de caracteres string1 é menor do que a subcadeia de caracteres string2 . |
0 | A subcadeia de caracteres string1 é idêntica à subcadeia de caracteres string2 . |
> 0 | A subcadeia de caracteres string1 é maior que a subcadeia de caracteres string2 . |
Em um erro de validação de parâmetro, essas funções retornam _NLSCMPERROR
, que é definido em <string.h e <mbstring.h>>.
Comentários
A _strnicmp
função compara, no máximo, os primeiros count
caracteres de string1
e string2
. A comparação é executada independentemente do caso, convertendo cada caractere em minúsculas. _strnicmp
é uma versão que não diferencia maiúsculas e minúsculas de strncmp
. A comparação termina se um caractere nulo de terminação é atingido em qualquer cadeia de caracteres antes dos count
caracteres serem comparados. Se as cadeias de caracteres forem iguais quando um caractere nulo de terminação for atingido em qualquer cadeia de caracteres antes dos count
caracteres serem comparados, a cadeia de caracteres mais curta será menor.
Os caracteres de 91 a 96 na tabela ASCII ('[', '\', ']', '^', '_' e '`') avaliam como menor do que qualquer caractere alfabético. Essa classificação é idêntica ao do stricmp
.
_wcsnicmp
e _mbsnicmp
são versões de caracteres largos e de caracteres multibyte de _strnicmp
. Os argumentos de são cadeias de _wcsnicmp
caracteres largos. Os argumentos de são cadeias de _mbsnicmp
caracteres multibyte. _mbsnicmp
reconhece sequências de caracteres multibyte de acordo com a página de código multibyte atual e retorna _NLSCMPERROR
em um erro. Para obter mais informações, consulte Páginas de código. Caso contrário, essas três funções se comportam de forma idêntica. Essas funções são afetadas pela configuração de localidade – as versões que não têm o sufixo _l
usam a localidade atual para esse comportamento dependente de localidade; e as versões que têm o sufixo _l
, ao invés disso, usam o locale
informado. Para obter mais informações, consulte Localidade.
Todas essas funções validam seus parâmetros. Se um ou string2
for um string1
ponteiro nulo, o manipulador de parâmetros inválido será chamado, conforme descrito em Validação de parâmetro. Se a execução puder continuar, essas funções retornarão _NLSCMPERROR
e definirão errno
para EINVAL
.
Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, consulte Estado global na CRT.
Mapeamentos de 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 sobre compatibilidade, consulte Compatibilidade.
Exemplo
Confira o exemplo de strncmp
.
Confira também
Manipulação de cadeia de caracteres
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
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de