Partager via


_mbsnbicmp, _mbsnbicmp_l

Compare n octets de deux chaînes de caractères multioctets et ignore la casse.

Important

Cette API ne peut 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 dans les applications de la plateforme Windows universelle.

Syntaxe

int _mbsnbicmp(
   const unsigned char *string1,
   const unsigned char *string2,
   size_t count
);

Paramètres

string1, string2
Chaîne terminée par Null à comparer.

count
Nombre d'octets à comparer.

Valeur retournée

La valeur de retour indique la relation entre les sous-chaînes.

Valeur retournée Description
< 0 La sous-chaîne de string1 est inférieure à la sous-chaîne de string2.
0 La sous-chaîne de string1 est identique à la sous-chaîne de string2.
> 0 La sous-chaîne de string1 est supérieure à la sous-chaîne de string2.

En cas d'erreur, _mbsnbicmp retourne _NLSCMPERROR, qui est défini dans String.h et Mbstring.h.

Notes

La fonction _mbsnbicmp effectue une comparaison ordinale des count (au plus) premiers octets de string1 et de string2. La comparaison est effectuée en convertissant chaque caractère en minuscule ; _mbsnbcmp est une version de _mbsnbicmp qui respecte la casse. La comparaison se termine si un caractère null de fin est atteint dans l'une ou l'autre des chaînes avant que count caractères soient comparés. Si les chaînes sont égales quand un caractère null de fin est atteint dans l'une ou l'autre des chaînes avant que count caractères soient comparés, la chaîne la plus courte est considérée comme étant inférieure.

_mbsnbicmp est similaire à _mbsnbcmp, à ceci près qu’elle compare des chaînes jusqu’à count octets au lieu de les comparer par caractères.

Deux chaînes contenant des caractères situés entre « Z » et « a » dans la table ASCII ('[', '\', ']', '^', '_' et ''') comparent différemment, selon leur cas. Par exemple, les deux chaînes « ABCDE » et « ABCD^ » comparent une façon si la comparaison est en minuscules (« abcde » > « abcd^ ») et l’autre façon (« ABCDE » < « ABCD^ ») si elle est en majuscules.

_mbsnbicmp reconnaît les séquences de caractères multioctets en fonction de la page de codes multioctets en cours d’utilisation. Elle n’est pas affectée par le paramètre de paramètres régionaux actuel.

string1 S’il s’agit d’un pointeur Null ou string2 s’il s’agit d’un pointeur Null, _mbsnbicmp appelle le gestionnaire de paramètres non valide, comme décrit dans la validation des paramètres. Si l'exécution est autorisée à continuer, cette fonction retourne _NLSCMPERROR et définit à errno à EINVAL.

Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.

Mappages de routines de texte générique

Routine Tchar.h _UNICODE et _MBCS non définis _MBCS défini _UNICODE défini
_tcsnicmp _strnicmp _mbsnbicmp _wcsnicmp
_tcsnicmp_l _strnicmp_l _mbsnbicmp_l _wcsnicmp_l

Spécifications

Routine En-tête requis
_mbsnbicmp <mbstring.h>

Pour plus d’informations sur la compatibilité, consultez Compatibility.

Exemple

Consultez l’exemple pour _mbsnbcmp, _mbsnbcmp_l.

Voir aussi

Manipulation de chaînes
_mbsnbcat, _mbsnbcat_l
_mbsnbcmp, _mbsnbcmp_l
_stricmp, , _wcsicmp, _stricmp_l_mbsicmp, , _wcsicmp_l_mbsicmp_l