Compartilhar via


strcoll, wcscoll, _mbscoll, _strcoll_l, _wcscoll_l, _mbscoll_l

Compare cadeias de caracteres usando a localidade atual ou uma categoria especificada de estado da conversão de LC_CTYPE.

Observação importanteImportante

_mbscoll e _mbscoll_l não podem ser usados em aplicativos executados em Tempo de Execução do Windows.Para obter mais informações, consulte Funções de CRT não suportadas com /ZW.

int strcoll( const char *string1, const char *string2 ); int wcscoll( const wchar_t *string1, const wchar_t *string2 ); int _mbscoll( const unsigned char *string1, const unsigned char *string2 ); int _strcoll_l( const char *string1, const char *string2, _locale_t locale ); int wcscoll_l( const wchar_t *string1, const wchar_t *string2, _locale_t locale ); int _mbscoll_l( const unsigned char *string1, const unsigned char *string2, _locale_t locale );

Parâmetros

  • string1, string2
    Cadeias de caracteres NULL- terminadas para comparar.

  • locale
    A localidade usar.

Valor de retorno

Cada uma dessas funções retorna um valor que indica a relação de string1 a string2*,* como segue.

Valor de Retorno

Relacionamento de string1 a string2

< 0

string1 menor que string2

0

string1 idêntico a string2

> 0

string1 maior do que string2

Cada uma dessas funções retorna _NLSCMPERROR em um erro.Para usar _NLSCMPERROR, inclua STRING.H ou. MBSTRING.H.wcscoll pode falhar se string1 ou string2 são NULL ou contém o código de largo- caractere fora do domínio de sequência de comparação.Quando ocorre um erro, wcscoll pode definir errno a EINVAL.Para verificar se há um erro em uma chamada para wcscoll, defina a errno 0 e então verifica errno após chamar wcscoll.

Comentários

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

Todas essas funções validam seus parâmetros.Se string1 ou string2 são um ponteiro zero, ou se count é maior do que INT_MAX, o manipulador inválido do parâmetro é invocado, como descrito em Validação de parâmetro .Se a execução é permitida continuar, essas funções _NLSCMPERROR de retorno e errno defina a EINVAL.

Comparação das duas cadeias de caracteres é uma operação de são dependentes desde que cada localidade tem diferentes regras para ordenar caracteres.As versões dessas funções sem o sufixo de _l usam a localidade de segmento atual para este comportamento de são dependentes; as versões com o sufixo de _l são idênticas a função correspondente sem o sufixo exceto que usam a localidade dentro passada como um parâmetro em vez de localidade atual.Para obter mais informações, consulte Localidade.

Mapeamentos da rotina de Genérico- texto

Rotina de TCHAR.H

_UNICODE & _MBCS não definidos

_MBCS definido

_UNICODE definido

_tcscoll

strcoll

_mbscoll

wcscoll

Requisitos

Rotina

Cabeçalho necessário

strcoll

<string.h>

wcscoll

<wchar.h>, <string.h>

_mbscoll, _mbscoll_l

<mbstring.h>

_strcoll_l

<string.h>

_wcscoll_l

<wchar.h>, <string.h>

Para informações extras de compatibilidade Compatibilidade na introdução, consulte.

Equivalência do .NET Framework

System::String::Compare

Consulte também

Referência

Localidade

Manipulação de cadeia de caracteres (CRT)

Funções de 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