Partager via


Fonction StrCmpNCW (shlwapi.h)

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

Syntaxe

int StrCmpNCW(
  [in] LPCWSTR pszStr1,
  [in] LPCWSTR 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 tirée de celle pointée par pszStr1 est par ordre alphabétique supérieure à la chaîne extraite de celle vers laquelle a pointé pszStr2. Retourne une valeur négative si la chaîne extraite de celle vers laquelle pszStr1 pointe est alphabétiquement inférieure à la chaîne tirée de celle vers laquelle a pointé 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 double octet (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 deuxième, 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égal 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 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, 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