strcoll, wcscoll, _mbscoll, _strcoll_l, _wcscoll_l, _mbscoll_l
Comparez des chaînes à l'aide de les paramètres régionaux ou une catégorie spécifiée du rapport de conversion de LC_CTYPE.
Important
_mbscoll et _mbscoll_l ne peuvent pas être utilisés dans les applications qui s'exécutent dans les fenêtres d'exécution.Pour plus d'informations, consultez Fonctions CRT non prises en charge avec /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
);
Paramètres
string1, string2
Chaîne terminée par le caractère NULL à comparer.locale
Paramètres régionaux à utiliser.
Valeur de retour
Chacune de ces fonctions retourne une valeur indiquant la relation d' string1 à string2*,* comme suit.
Valeur de retour |
Relation de string1 à chaîne2 |
---|---|
< 0 |
string1 moins qu' string2 |
0 |
string1 identique à string2 |
> 0 |
string1 supérieur string2 |
Chacune de ces fonctions retourne _NLSCMPERROR sur une erreur.Pour utiliser _NLSCMPERROR, incluez STRING.H ou MBSTRING.H.wcscoll peut échouer si string1 ou string2 est NULL ou contient du code à caractère élargi en dehors de le champ de la séquence assemblante.Lorsqu'une erreur se produit, wcscoll peut définir errno à EINVAL.Pour vérifier une erreur dans un appel à wcscoll, affectez errno à 0 puis vérifiez errno après avoir appelé wcscoll.
Notes
Chacune de ces fonctions effectue une comparaison respectant la casse d' string1 et d' string2 d'après la page de codes en cours de 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.
Toutes ces fonctions valident leurs paramètres.Si string1 ou string2 est un pointeur null, ou si count est supérieur INT_MAX, le gestionnaire de paramètre non valide est appelé, comme décrit dans Validation des paramètres .Si est autorisé à l'exécution pour continuer, ces fonctions _NLSCMPERROR de retour et affectez errno à EINVAL.
La comparaison de deux chaînes est une opération dépendante des paramètres régionaux étant donné que chaque paramètre régional ont des règles différentes pour classer des caractères.Les versions de ces fonctions sans suffixe d' _l utilisent les paramètres régionaux du thread courant pour ce comportement dépendant des paramètres régionaux ; les versions avec le suffixe d' _l sont identiques à la fonction correspondante sans suffixe mais qu'elles utilisent les paramètres régionaux passés comme paramètre au lieu des paramètres régionaux.Pour plus d'informations, consultez Paramètres régionaux.
Mappages de routines de texte générique
Routine de TCHAR.H |
_UNICODE et non définis _MBCS |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_tcscoll |
strcoll |
_mbscoll |
wcscoll |
Configuration requise
Routine |
En-tête requis |
---|---|
strcoll |
<string.h> |
wcscoll |
<wchar.h>, <string.h> |
_mbscoll, _mbscoll_l |
<mbstring.h> |
_strcoll_l |
<string.h> |
_wcscoll_l |
<wchar.h>, <string.h> |
Pour des informations de compatibilité supplémentaires, consultez l' Compatibilité dans l'introduction.
É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