Compartilhar via


_stricoll, _wcsicoll, _mbsicoll, _stricoll_l, _wcsicoll_l, _mbsicoll_l

comparar cadeias de caracteres usando informações específicas de localidade.

int _stricoll(
   const char *string1,
   const char *string2 
);
int _wcsicoll(
   const wchar_t *string1,
   const wchar_t *string2 
);
int _mbsicoll(
   const unsigned char *string1,
   const unsigned char *string2 
);
int _stricoll_l(
   const char *string1,
   const char *string2,
   _locale_t locale
);
int _wcsicoll_l(
   const wchar_t *string1,
   const wchar_t *string2,
   _locale_t locale
);
int _mbsicoll_l(
   const unsigned char *string1,
   const unsigned char *string2,
   _locale_t locale
);

Parâmetros

  • string1, string2
    Seqüências de terminação nula para comparar.

  • locale
    A localidade para usar.

Valor de retorno

Cada uma dessas funções retorna um valor que indica a relação de string1 para string2*,* sistema autônomo a seguir.

Valor de Retorno

Relação de seqüência1 para seqüência2

< 0

string1 menor que string2

0

string1 idêntico a string2

> 0

string1 maior que string2

_NLSCMPERROR

Ocorreu um erro.

Cada uma dessas funções retornará _NLSCMPERROR. Para usar _NLSCMPERROR, incluir qualquer uma STRING.H ou MBSTRING.H. _wcsicoll pode falhar se qualquer uma string1 ou string2 contém códigos de caractere largo fora do domínio da sequência de agrupamento. Quando ocorre um erro, _wcsicoll pode conjunto errno para EINVAL. Para verificar se há um erro em uma telefonar para _wcsicoll, definido errno como 0 e, em seguida, verificar errno Após a telefonar _wcsicoll.

Comentários

Cada uma dessas funções executa um caso-comparação entre maiúsculas e minúsculas de string1 e string2 de acordo com para a página de código atualmente em uso. Essas funções devem ser usadas somente quando há uma diferença entre o caractere conjunto ordem e a ordem de caractere lexicographic na página de código corrente e essa diferença é de interesse para a comparação de cadeia de caracteres de caracteres.

_stricmpé diferente de _stricollem que o _stricmpcomparação é afetada por LC_CTYPE, enquanto o _stricollcomparação é feito de acordo com o LC_CTYPEe LC_COLLATEcategorias da localidade. Para obter mais informações sobre o LC_COLLATEcategoria, consulte setlocale and Categorias de localidade.As versões dessas funções sem o _l uso de sufixo a localidade corrente; as versões com o _l sufixo são idênticas exceto que eles usam a localidade do passado em vez disso. For more information, see Localidade.

Todas essas funções validar seus parâmetros.Se qualquer um dos string1 ou string2 são NULL ponteiros, o manipulador de parâmetro inválido é chamado, conforme descrito em Validação de parâmetro . Se a execução for permitida para continuar, essas funções retornam _NLSCMPERROR e conjunto errno para EINVAL.

Mapeamentos de rotina de texto genérica

Rotina TCHAR.H

_UNICODE & _MBCS não definido

_MBCS definido

_UNICODE definido

_tcsicoll

_stricoll

_mbsicoll

_wcsicoll

Requisitos

Rotina

Cabeçalho necessário

_stricoll, _stricoll_l

<string.h>

_wcsicoll, _wcsicoll_l

<wchar.h>, <string.h>

_mbsicoll, _mbsicoll_l

<mbstring.h>

Para obter informações adicionais compatibilidade, consulte Compatibilidade na introdução.

Equivalente do NET Framework

sistema::String::comparar

Consulte também

Referência

Localidade

Manipulação de seqüência de caracteres (CRT)

Funções strcoll

localeconv

_mbsnbcoll, _mbsnbcoll_l, _mbsnbicoll, _mbsnbicoll_l

setlocale, _wsetlocale

strcmp wcscmp, _mbscmp

_stricmp, _wcsicmp, _mbsicmp, _stricmp_l, _wcsicmp_l, _mbsicmp_l

strncmp, wcsncmp, _mbsncmp, _mbsncmp_l

_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l

strxfrm, wcsxfrm, _strxfrm_l, _wcsxfrm_l