_stricoll, _wcsicoll, _mbsicoll, _stricoll_l, _wcsicoll_l, _mbsicoll_l

Confrontare le stringhe utilizzando informazioni specifiche delle impostazioni locali.

Nota importanteImportante

_mbsicoll e _mbsicoll_l non possono essere utilizzati nelle applicazioni eseguite nelle finestre runtime.Per ulteriori informazioni, vedere Funzioni CRT non supportate con /ZW.

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
);

Parametri

  • string1, string2
    Stringhe che terminano con null da confrontare.

  • locale
    Le impostazioni locali da utilizzare.

Valore restituito

Ognuna di queste funzioni restituisce un valore che indica la relazione tra string1 e string2*,* come segue.

Valore restituito

Relazione di stringa1 e stringa2

< 0

string1 minore di string2

0

string1 uguale a string2

> 0

string1 è maggiore di string2

_NLSCMPERROR

si è verificato un errore.

Ognuno di questi restituisce _NLSCMPERRORdi funzioni.Per utilizzare _NLSCMPERROR, includere STRING.H o MBSTRING.H._wcsicoll può non riuscire se string1 o string2 contiene i codici di caratteri al di fuori del dominio della sequenza di ordinamento.Quando si verifica un errore, _wcsicoll può impostare errno a EINVAL.Per verificare un errore in una chiamata a _wcsicoll, impostare errno a 0 e verificare errno dopo aver chiamato _wcsicoll.

Note

Ognuna di queste funzioni attualmente esegue un confronto senza distinzione tra maiuscole e minuscole di string1 e di string2 in base alla tabella codici utilizzata.Queste funzioni devono essere utilizzate solo quando esiste una differenza tra l'ordine del set di caratteri e l'ordine dei caratteri lessicografico nella tabella codici corrente e questa differenza è di particolare interesse per il confronto di stringhe.

_stricmp differisce da _stricoll in quanto il confronto di _stricmp è interessato da LC_CTYPE, mentre il confronto di _stricoll è in base alle categorie di LC_COLLATE e di LC_CTYPE delle impostazioni locali.Per ulteriori informazioni sulla categoria di LC_COLLATE, vedere setlocale e Categorie di impostazioni locali.Le versioni di queste funzioni senza il suffisso di _l utilizzano le impostazioni locali correnti, le versioni con il suffisso di _l sono identiche ma utilizzano le impostazioni locali passate in alternativa.Per ulteriori informazioni, vedere Impostazioni locali.

Tutte queste funzioni convalidano i relativi parametri.Se string1 o string2 è puntatori di NULL, il gestore non valido di parametro viene richiamato, come descritto in Convalida dei parametri.Se all'esecuzione è permesso continuare, queste funzioni restituiscono _NLSCMPERROR e impostano errno a EINVAL.

Mapping di routine a Testo generico

TCHAR.H routine

_UNICODE & _MBCS non definiti

_MBCS definito

_UNICODE definito

_tcsicoll

_stricoll

_mbsicoll

_wcsicoll

Requisiti

Routine

Intestazione obbligatoria

_stricoll, _stricoll_l

<string.h>

_wcsicoll, _wcsicoll_l

<wchar.h>, <string.h>

_mbsicoll, _mbsicoll_l

<mbstring.h>

Per ulteriori informazioni sulla compatibilità, vedere Compatibilità nell'introduzione.

Equivalente .NET Framework

System::String::Compare

Vedere anche

Riferimenti

Impostazioni locali

Modifica delle stringhe (CRT)

funzioni di 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