_stricoll, _wcsicoll, _mbsicoll, _stricoll_l, _wcsicoll_l, _mbsicoll_l
Confronto di stringhe utilizzando informazioni specifiche delle impostazioni locali.
Importante
_mbsicoll e _mbsicoll_l non possono essere utilizzate nelle applicazioni che vengono eseguite in Windows 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
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. |
Ognuna di queste funzioni restituisce _NLSCMPERROR. Per utilizzare _NLSCMPERROR, includere STRING.H o MBSTRING.H. _wcsicoll può non riuscire se string1 o string2 contiene codici a caratteri "wide" 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 quindi verificare errno dopo aver chiamato _wcsicoll.
Note
Ognuna di queste funzioni attualmente esegue un confronto senza distinzione tra maiuscole e minuscole di string1 e string2 in base alla tabella codici attualmente 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, questa differenza è particolarmente interessante per il confronto di stringhe.
_stricmp si distingue da _stricoll in quanto il confronto _stricmp è influenzato da LC_CTYPE, mentre il confronto _stricoll si basa sulle categorie LC_CTYPE e LC_COLLATE delle impostazioni locali. Per ulteriori informazioni sulla categoria LC_COLLATE, vedere setlocale e Categorie locali. Le versioni di queste funzioni senza il suffisso _l utilizzano le impostazioni locali correnti; le versioni con il suffisso _l sono identiche salvo ad eccezione del fatto che utilizzano le impostazioni locali passate. Per ulteriori informazioni, vedere Impostazioni locali.
Tutte queste funzioni convalidano i relativi parametri. Se string1 o string2 sono puntatori NULL, viene richiamato il gestore di parametro non valido, come descritto in Convalida dei parametri. Se l'esecuzione può continuare, queste funzioni restituiscono _NLSCMPERROR e impostano errno su EINVAL.
Mapping di routine su testo generico
Routine TCHAR.H |
_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à.
Equivalente .NET Framework
Vedere anche
Riferimenti
_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