lstrcmpiW-Funktion (winbase.h)

Vergleicht zwei Zeichenfolgen. Beim Vergleich wird die Groß-/Kleinschreibung nicht berücksichtigt.

Verwenden Sie die lstrcmp-Funktion , um einen Vergleich durchzuführen, bei dem die Groß-/Kleinschreibung beachtet wird.

Syntax

int lstrcmpiW(
  [in] LPCWSTR lpString1,
  [in] LPCWSTR lpString2
);

Parameter

[in] lpString1

Typ: LPCWSTR

Die erste null-beendete Zeichenfolge, die verglichen werden soll.

[in] lpString2

Typ: LPCWSTR

Die zweite null-beendete Zeichenfolge, die verglichen werden soll.

Rückgabewert

Typ: int

Wenn die Zeichenfolge, auf die von lpString1 verwiesen wird, kleiner ist als die Zeichenfolge, auf die von lpString2 verwiesen wird, ist der Rückgabewert negativ. Wenn die Zeichenfolge, auf die von lpString1 verwiesen wird, größer ist als die Zeichenfolge, auf die von lpString2 verwiesen wird, ist der Rückgabewert positiv. Wenn die Zeichenfolgen gleich sind, ist der Rückgabewert 0.

Hinweise

Die lstrcmpi-Funktion vergleicht zwei Zeichenfolgen, indem die ersten Zeichen gegeneinander, die zweiten Zeichen gegeneinander usw. überprüft werden, bis sie eine Ungleichheit findet oder die Enden der Zeichenfolgen erreicht.

Beachten Sie, dass die Parameter lpString1 und lpString2 null-beendet sein müssen, andernfalls kann der Zeichenfolgenvergleich falsch sein.

Die Funktion ruft CompareStringEx unter Verwendung des aktuellen Threadgebietsschemas auf und subtrahiert 2 vom Ergebnis, um die C-Laufzeitkonventionen für den Vergleich von Zeichenfolgen beizubehalten.

Für einige Gebietsschemas ist die lstrcmpi-Funktion möglicherweise nicht ausreichend. Verwenden Sie in diesem Fall CompareStringEx , um einen ordnungsgemäßen Vergleich sicherzustellen. Rufen Sie beispielsweise in Japan mit den Werten NORM_IGNORECASE, NORM_IGNOREKANATYPE und NORM_IGNOREWIDTH auf, um den am besten geeigneten nicht exakten Zeichenfolgenvergleich zu erzielen. Die werte NORM_IGNOREKANATYPE und NORM_IGNOREWIDTH werden in nicht asiatischen Gebietsschemas ignoriert, sodass Sie diese Werte für alle Gebietsschemas festlegen können und unabhängig vom Gebietsschema garantiert eine kulturell korrekte "unempfindliche" Sortierung haben. Beachten Sie, dass die Angabe dieser Werte die Leistung verlangsamt. Verwenden Sie sie daher nur bei Bedarf.

Mit einer DBCS-Version (Double-Byte Character Set) des Systems kann diese Funktion zwei DBCS-Zeichenfolgen vergleichen.

Die lstrcmpi-Funktion verwendet eine Wortsortierung anstelle einer Zeichenfolgensortierung. Eine Wortsortierung behandelt Bindestriche und Apostrophe anders als andere Symbole, die nicht alphanumerisch sind, um sicherzustellen, dass Wörter wie "coop" und "koop" in einer sortierten Liste zusammenbleiben. Eine ausführliche Erläuterung der Wort- und Zeichenfolgensortierungen finden Sie unter Behandeln der Sortierung in Ihren Anwendungen.

Sicherheitsbemerkungen

Sicherheitsüberlegungen zur Auswahl von Vergleichsfunktionen finden Sie unter Sicherheitsüberlegungen: Internationale Features .

Hinweis

Der winbase.h-Header definiert lstrcmpi als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winbase.h (einschließlich Windows.h)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

CompareString

CompareStringEx

CompareStringOrdinal

Konzept

Andere Ressourcen

Referenz

Zeichenfolgen

lstrcat

lstrcmp

lstrcpy

lstrlen