Share via


fonction lstrcmpA (winbase.h)

Compare deux chaînes de caractères. La comparaison respecte la casse.

Pour effectuer une comparaison qui ne respecte pas la casse, utilisez la fonction lstrcmpi .

Syntaxe

int lstrcmpA(
  [in] LPCSTR lpString1,
  [in] LPCSTR lpString2
);

Paramètres

[in] lpString1

Type : LPCTSTR

Première chaîne terminée par null à comparer.

[in] lpString2

Type : LPCTSTR

Deuxième chaîne terminée par null à comparer.

Valeur retournée

Type : int

Si la chaîne pointée par lpString1 est inférieure à la chaîne pointée par lpString2, la valeur de retour est négative. Si la chaîne pointée par lpString1 est supérieure à la chaîne pointée par lpString2, la valeur de retour est positive. Si les chaînes sont égales, la valeur de retour est zéro.

Remarques

La fonction lstrcmp compare deux chaînes en vérifiant les premiers caractères les uns par rapport aux autres, les deuxièmes caractères les uns par rapport aux autres, et ainsi de suite jusqu’à ce qu’elle trouve une inégalité ou atteigne les extrémités des chaînes.

Notez que les paramètres lpString1 et lpString2 doivent être terminés par null, sinon la comparaison de chaînes peut être incorrecte.

La fonction appelle CompareStringEx, à l’aide des paramètres régionaux de thread actuels, et soustrait 2 du résultat, pour maintenir les conventions d’exécution C pour comparer les chaînes.

La langue (paramètres régionaux utilisateur) sélectionnée par l’utilisateur au moment de l’installation, ou via Panneau de configuration, détermine la chaîne la plus grande (ou si les chaînes sont identiques). Si aucune langue (paramètres régionaux utilisateur) n’est sélectionnée, le système effectue la comparaison à l’aide des valeurs par défaut.

Avec une version de jeu de caractères double octet (DBCS) du système, cette fonction peut comparer deux chaînes DBCS.

La fonction lstrcmp utilise un tri de mots plutôt qu’un tri de chaîne. Un tri de mots traite les traits d’union et les apostrophes différemment d’autres symboles qui ne sont pas alphanumériques, afin de s’assurer que les mots tels que « coop » et « coopérative » restent ensemble dans une liste triée. Pour une présentation détaillée des tris de mots et des tris de chaînes, consultez Gestion du tri dans vos applications.

Remarques sur la sécurité

Consultez Considérations relatives à la sécurité : fonctionnalités internationales pour connaître les considérations de sécurité relatives au choix des fonctions de comparaison.

Notes

L’en-tête winbase.h définit lstrcmp comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête winbase.h (inclure Windows.h)
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

CompareString

CompareStringEx

CompareStringOrdinal

Conceptuel

Autres ressources

Référence

Chaînes

lstrcat

lstrcmpi

lstrcpy

lstrlen