Partager via


Fonction CompareStringOrdinal (stringapiset.h)

Compare deux chaînes Unicode pour tester l’équivalence binaire.

Syntaxe

int CompareStringOrdinal(
  [in] _In_NLS_string_(cchCount1)LPCWCH lpString1,
  [in] int                              cchCount1,
  [in] _In_NLS_string_(cchCount2)LPCWCH lpString2,
  [in] int                              cchCount2,
  [in] BOOL                             bIgnoreCase
);

Paramètres

[in] lpString1

Pointeur vers la première chaîne à comparer.

[in] cchCount1

Longueur de la chaîne indiquée par lpString1. L’application fournit -1 si la chaîne est terminée par null. Dans ce cas, la fonction détermine automatiquement la longueur.

[in] lpString2

Pointeur vers la deuxième chaîne à comparer.

[in] cchCount2

Longueur de la chaîne indiquée par lpString2. L’application fournit -1 si la chaîne est terminée par null. Dans ce cas, la fonction détermine automatiquement la longueur.

[in] bIgnoreCase

TRUE si la fonction doit effectuer une comparaison qui ne respecte pas la casse à l’aide des informations de table majuscules du système d’exploitation. L’application définit ce paramètre sur FALSE si la fonction doit comparer les chaînes exactement telles qu’elles sont transmises. Notez que 1 est la seule valeur numérique qui peut être utilisée pour spécifier une valeur true pour ce paramètre booléen qui ne produit pas d’erreur de paramètre non valide. Les valeurs booléennes de ce paramètre fonctionnent comme prévu.

Valeur retournée

Retourne l’une des valeurs suivantes en cas de réussite. Pour conserver la convention d’exécution C de comparaison de chaînes, la valeur 2 peut être soustraite d’une valeur de retour différente de zéro. Ensuite, la signification de <0, ==0 et >0 est cohérente avec le runtime C.

  • CSTR_LESS_THAN. La valeur indiquée par lpString1 est inférieure à la valeur indiquée par lpString2.
  • CSTR_EQUAL. La valeur indiquée par lpString1 est égale à la valeur indiquée par lpString2.
  • CSTR_GREATER_THAN. La valeur indiquée par lpString1 est supérieure à la valeur indiquée par lpString2.
La fonction retourne 0 si elle ne réussit pas. Pour obtenir des informations d’erreur étendues, l’application peut appeler GetLastError, qui peut retourner l’un des codes d’erreur suivants :
  • ERROR_INVALID_PARAMETER. L’une des valeurs de paramètre n’était pas valide.

Remarques

Cette fonction teste l’égalité binaire et non l’égalité linguistique. Pour plus d’informations sur l’utilisation de la fonction pour le tri ordinal, consultez Gestion du tri dans vos applications.

Les applications qui s’intéressent à l’égalité linguistique doivent utiliser CompareString, CompareStringEx, lstrcmp ou lstrcmpi. Pour plus d’informations sur le tri linguistique, consultez Gestion du tri dans vos applications

À compter de Windows 8 : CompareStringOrdinal est déclaré dans Stringapiset.h. Avant Windows 8, il était déclaré dans Winnls.h.

Configuration requise

   
Client minimal pris en charge Windows Vista [applications de bureau | applications UWP]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête stringapiset.h (inclure Windows.h)
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

CompareString

CompareStringEx

Gestion du tri dans vos applications

Prise en charge des langues nationales

Fonctions de prise en charge des langues nationales

Considérations relatives à la sécurité : Fonctionnalités internationales

Utilisation de la normalisation Unicode pour représenter des chaînes