Partager via


_strnicoll, _wcsnicoll, _mbsnicoll, _strnicoll_l, _wcsnicoll_l, _mbsnicoll_l

Compare les chaînes à l'aide d'informations spécifiques aux paramètres régionaux.

Important

_mbsnicoll et _mbsnicoll_l ne peuvent pas être utilisée 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 _strnicoll(
   const char *string1,
   const char *string2,
   size_t count 
);
int _wcsnicoll(
   const wchar_t *string1,
   const wchar_t *string2 ,
   size_t count 
);
int _mbsnicoll(
   const unsigned char *string1,
   const unsigned char *string2,
   size_t count 
);
int _strnicoll_l(
   const char *string1,
   const char *string2,
   size_t count,
   _locale_t locale
);
int _wcsnicoll_l(
   const wchar_t *string1,
   const wchar_t *string2 ,
   size_t count,
   _locale_t locale
);
int _mbsnicoll_l(
   const unsigned char *string1,
   const unsigned char *string2,
   size_t count,
   _locale_t locale
);

Paramètres

  • string1, string2
    Chaînes terminées par Null à comparer.

  • count
    Nombre de caractères à comparer.

  • locale
    Paramètres régionaux à utiliser.

Valeur de retour

Chacune de ces fonctions retourne une valeur indiquant la relation des sous-chaînes de string1 et 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

Chacune de ces fonctions retourne _NLSCMPERROR. Pour utiliser _NLSCMPERROR, incluez STRING.H ou MBSTRING.H. _wcsnicoll peut échouer si string1 ou string2 contiennent des codes de caractères larges en dehors du domaine de la séquence de classement. Lorsqu'une erreur se produit, _wcsnicoll peut affecter errno à EINVAL. Pour vérifier une erreur lors d'un appel à _wcsnicoll, affectez errno à 0 puis vérifiez errno après l'appel de _wcsnicoll**.**

Notes

Chacune de ces fonctions exécute une comparaison des premiers caractères count dans string1 et string2 selon la page de codes, sans tenir compte des majuscules ou des minuscules. 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 et que cette différence est intéressante pour la comparaison de chaînes. Les versions de ces fonctions sans suffixe _l utilisent les paramètres régionaux et la page de codes actuelle. Les versions avec le suffixe_l sont identiques mais elles utilisent les paramètres régionaux passés à la place. Pour plus d'informations, consultez Paramètres régionaux.

Toutes ces fonctions valident leurs paramètres. Si string1 ou string2 est un pointeur null, ou si le compte est supérieur à INT_MAX, le gestionnaire de paramètre non valide 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

_tcsncicoll

_strnicoll

_mbsnbicoll

_wcsnicoll

_tcsnicoll

_strnicoll

_mbsnbicoll

_wcsnicoll

_tcsnicoll_l

_strnicoll_l

_mbsnbicoll_l

_wcsnicoll_l

Configuration requise

Routine

En-tête requis

_strnicoll, _strnicoll_l

<string.h>

_wcsnicoll, _wcsnicoll_l

<string.h> ou <wchar.h>

_mbsnicoll, _mbsnicoll_l

<mbstring.h>

Pour plus d'informations sur la compatibilité, consultez Compatibilité.

Équivalent .NET Framework

System::String::Compare

Voir aussi

Référence

Paramètres régionaux

Manipulation de chaînes (CRT)

strcoll, fonctions

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