Partager via


Fonction StrCmpNCA (shlwapi.h)

Compare un nombre spécifié de caractères au début de deux chaînes à l’aide de règles de classement au moment de l’exécution C (ASCII). La comparaison respecte la casse.

Syntaxe

int StrCmpNCA(
  [in] LPCSTR pszStr1,
  [in] LPCSTR pszStr2,
       int    nChar
);

Paramètres

[in] pszStr1

Type : LPCTSTR

Pointeur vers la première chaîne terminée par null à comparer.

[in] pszStr2

Type : LPCTSTR

Pointeur vers la deuxième chaîne terminée par null à comparer.

nChar

Type : int

Nombre de caractères du début de chaque chaîne à comparer.

Valeur retournée

Type : int

Retourne zéro si les sous-chaînes sont identiques. Retourne une valeur positive si la chaîne extraite de celle pointée par pszStr1 est supérieure par ordre alphabétique à la chaîne extraite de celle vers laquelle pointe pszStr2. Retourne une valeur négative si la chaîne extraite de celle vers laquelle a pointé pszStr1 est inférieure par ordre alphabétique à la chaîne extraite de celle vers laquelle pointait pszStr2.

Remarques

Notez que StrCmpNC a été conçu pour comparer des chaînes canoniques. Ces chaînes ne sont pas localisées et se composent uniquement de caractères inférieurs à la valeur ASCII 128. Par conséquent, il ne fonctionnera pas correctement avec un jeu de caractères codés sur deux octets (DBCS) ou d’autres données à plusieurs caractères.

Cette fonction localise les premiers caractères inégaux et retourne un nombre positif si le caractère de la première chaîne est supérieur au caractère de la seconde, un nombre négatif s’il est inférieur ou zéro s’ils sont égaux. Par exemple, supposons que pszStr1="abczb », pszStr2="abcdefg », et que vous comparez les quatre premiers caractères de chacun. StrCmpNC détermine que le premier caractère inégaux se trouve à la position 4 (« z » dans pszStr1 et « d » dans pszStr2) et retourne une valeur positive, car le code ASCII pour « z » est supérieur au code ASCII pour « d ».

Pour les versions de Windows qui n’incluent pas StrCmpNC dans Shlwapi.h, la version ANSI ou Unicode individuelle de cette fonction doit être appelée directement à partir de Shlwapi.dll. StrCmpNCA est ordinal 151 et StrCmpNCW ordinal 152.

Notes

L’en-tête shlwapi.h définit StrCmpNC en tant qu’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. La combinaison 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

   
Client minimal pris en charge Windows 2000 Professionnel, Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête shlwapi.h
Bibliothèque Shlwapi.lib
DLL Shlwapi.dll (version 5.0 ou ultérieure)

Voir aussi

CompareString

StrCmpC

StrCmpN