_stricoll, _wcsicoll, _mbsicoll, _stricoll_l, _wcsicoll_l, _mbsicoll_l
Compare les chaînes à l'aide d'informations spécifiques aux paramètres régionaux.
Important
_mbsicoll et _mbsicoll_l ne peuvent pas être utilisées dans les applications qui s'exécutent dans le Windows Runtime.Pour plus d'informations, consultez Fonctions CRT non prises en charge avec /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
);
Paramètres
string1, string2
Chaîne terminée par Null à comparer.locale
Paramètres régionaux à utiliser.
Valeur de retour
Chacune de ces fonctions retourne une valeur indiquant la relation de string1 à string2*,* comme suit.
Valeur de retour |
Relation de chaîne1 à chaîne2 |
---|---|
< 0 |
string1 inférieure à string2 |
0 |
string1 identique à string2 |
> 0 |
string1 supérieur à string2 |
_NLSCMPERROR |
Une erreur s'est produite. |
Chacune de ces fonctions retourne _NLSCMPERROR. Pour utiliser _NLSCMPERROR, incluez STRING.H ou MBSTRING.H. _wcsicoll peut échouer si string1 ou string2 contiennent des codes de caractères larges en dehors de la séquence de classement. Lorsqu'une erreur se produit, _wcsicoll peut affecter errno à EINVAL. Pour vérifier une erreur lors d'un appel à _wcsicoll, affectez errno à 0 puis activez errno après l'appel de _wcsicoll.
Notes
Chacune de ces fonctions exécute une comparaison ne respectant pas la casse de string1 et string2 d'après la page de codes en cours d'utilisation. Ces fonctions doivent être utilisées uniquement lorsqu'il existe une différence entre l'ordre du jeu de caractères et l'ordre des caractères lexicographiques dans la page de codes actuelle et cette différence est intéressante pour la comparaison de chaînes.
_stricmp diffère de _stricoll car la comparaison de _stricmp est affectée par LC_CTYPE, tandis que la comparaison de _stricoll est en fonction des catégories LC_CTYPE et LC_COLLATE des paramètres régionaux. Pour plus d'informations sur la catégorie LC_COLLATE, consultez setlocale et Catégories de paramètres régionaux. Les versions de ces fonctions sans le suffixe _l utilisent les paramètres régionaux actuels; les versions avec le suffixe _l sont identiques, sauf qu'elles utilisent à la place les paramètres régionaux passés. Pour plus d'informations, consultez Paramètres régionaux.
Toutes ces fonctions valident leurs paramètres. Si string1 ou string2 sont des pointeurs NULL , le gestionnaire des paramètres invalides est appelé, comme décrit dans Validation de paramètre. Si l'exécution est autorisée à se poursuivre, ces fonctions retournent _NLSCMPERROR et définissent errno avec la valeur EINVAL.
Mappages de routines de texte générique
Routine TCHAR.H |
_UNICODE & _MBCS non définis |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_tcsicoll |
_stricoll |
_mbsicoll |
_wcsicoll |
Configuration requise
Routine |
En-tête requis |
---|---|
_stricoll, _stricoll_l |
<string.h> |
_wcsicoll, _wcsicoll_l |
<1wchar.h>2, <3string.h>4 |
_mbsicoll, _mbsicoll_l |
<mbstring.h> |
Pour plus d'informations sur la compatibilité, consultez Compatibilité.
Équivalent .NET Framework
Voir aussi
Référence
_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