_strnicoll, _wcsnicoll, _mbsnicoll, _strnicoll_l, _wcsnicoll_l, _mbsnicoll_l
Compara as cadeias de caracteres usando informações específicas da localidade.
Importante
_mbsnicoll e _mbsnicoll_l não podem ser usados em aplicativos executados no Tempo de Execução do Windows.Para obter mais informações, consulte Funções CRT sem suporte pelo /ZW.
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
Cadeias de caracteres terminadas com Null para comparaçãocount
Número de caracteres para comparação.locale
A localidade a ser usada.
Valor de retorno
Cada uma dessas funções retorna um valor que indica a relação de subcadeias de string1 e string2*,* conforme a seguir
Valor de retorno |
Relação de string1 com string2 |
---|---|
< 0 |
string1 menor que string2 |
0 |
string1 idêntico a string2 |
> 0 |
string1 maior que string2 |
Cada uma dessas funções retorna _NLSCMPERROR. Para usar _NLSCMPERROR, inclua STRING.H ou MBSTRING.H. _wcsnicoll pode falhar se string1 ou string2 contiver código de caracteres largos fora do domínio da sequência de agrupamento. Quando ocorre um erro, _wcsnicoll pode definir errno como EINVAL. Para verificar se há um erro em uma chamada a _wcsnicoll, defina errno para 0 e verifique errno após a chamada a _wcsnicoll**.**
Comentários
Cada uma dessas funções executa uma comparação que não diferencia maiúsculas de minúsculas dos primeiros caracteres de count em string1 e string2 de acordo com a página de código. Essas funções devem ser usadas somente quando há uma diferença entre a ordem do conjunto de caracteres e a ordem de caracteres lexicográficos na página de código, e essa diferença é interessante para comparação de cadeia de caracteres. As versões dessas funções sem o sufixo _l usam a localidade atual e a página de código. As versões com o sufixo _l são idênticas, exceto pelo fato de que usam a localidade informada. Para obter mais informações, consulte Localidade.
Todas essas funções validam seus parâmetros. Se string1 ou string2 for um ponteiro nulo, ou se a contagem for maior que INT_MAX, o manipulador de parâmetro inválido será 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 como EINVAL**.**
Mapeamentos da rotina de texto genérico
Rotina TCHAR.H |
_UNICODE & _MBCS não definido |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tcsncicoll |
_strnicoll |
_mbsnbicoll |
_wcsnicoll |
_tcsnicoll |
_strnicoll |
_wcsnicoll |
|
_tcsnicoll_l |
_strnicoll_l |
_mbsnbicoll_l |
_wcsnicoll_l |
Requisitos
Rotina |
Cabeçalho necessário |
---|---|
_strnicoll, _strnicoll_l |
<string.h> |
_wcsnicoll, _wcsnicoll_l |
<wchar.h> ou <string.h> |
_mbsnicoll, _mbsnicoll_l |
<mbstring.h> |
Para informações adicionais de compatibilidade, consulte Compatibilidade.
Equivalência do .NET Framework
Consulte também
Referência
Manipulação da cadeia de caracteres (CRT)
_mbsnbcoll, _mbsnbcoll_l, _mbsnbicoll, _mbsnbicoll_l
_stricmp, _wcsicmp, _mbsicmp, _stricmp_l, _wcsicmp_l, _mbsicmp_l
strncmp, wcsncmp, _mbsncmp, _mbsncmp_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l