CompareStringW-Funktion (stringapiset.h)
Vergleicht zwei Zeichenfolgen für ein durch den Bezeichner angegebenes Gebietsschema .
Syntax
int CompareStringW(
[in] LCID Locale,
[in] DWORD dwCmpFlags,
[in] _In_NLS_string_(cchCount1)PCNZWCH lpString1,
[in] int cchCount1,
[in] _In_NLS_string_(cchCount2)PCNZWCH lpString2,
[in] int cchCount2
);
Parameter
[in] Locale
Gebietsschemabezeichner des Gebietsschemas, das für den Vergleich verwendet wird. Sie können das MAKELCID-Makro verwenden, um einen Gebietsschemabezeichner zu erstellen oder einen der folgenden vordefinierten Werte zu verwenden.
- LOCALE_CUSTOM_DEFAULT
- LOCALE_CUSTOM_UI_DEFAULT
- LOCALE_CUSTOM_UNSPECIFIED
- LOCALE_INVARIANT
- LOCALE_SYSTEM_DEFAULT
- LOCALE_USER_DEFAULT
[in] dwCmpFlags
Flags, die angeben, wie die Funktion die beiden Zeichenfolgen vergleicht. Ausführliche Definitionen finden Sie im dwCmpFlags-Parameter von CompareStringEx.
[in] lpString1
Zeiger auf die erste zu vergleichende Zeichenfolge.
[in] cchCount1
Länge der durch lpString1 angegebenen Zeichenfolge, ohne das endende NULL-Zeichen. Dieser Wert stellt Bytes für die ANSI-Version der Funktion und Breitzeichen für die Unicode-Version dar. Die Anwendung kann einen negativen Wert angeben, wenn die Zeichenfolge null-beendet ist. In diesem Fall bestimmt die Funktion die Länge automatisch.
[in] lpString2
Zeiger auf die zweite zu vergleichende Zeichenfolge.
[in] cchCount2
Länge der durch lpString2 angegebenen Zeichenfolge, ohne das endende NULL-Zeichen. Dieser Wert stellt Bytes für die ANSI-Version der Funktion und Breitzeichen für die Unicode-Version dar. Die Anwendung kann einen negativen Wert angeben, wenn die Zeichenfolge null-beendet ist. In diesem Fall bestimmt die Funktion die Länge automatisch.
Rückgabewert
Gibt die für CompareStringEx beschriebenen Werte zurück.
Hinweise
Weitere Informationen finden Sie unter Hinweise zu CompareStringEx.
Wenn Ihre Anwendung die ANSI-Version von CompareString aufruft, konvertiert die Funktion Parameter über die Standardcodepage des angegebenen Gebietsschemas. Daher kann eine Anwendung CompareString niemals verwenden, um UTF-8-Text zu verarbeiten.
Bei Vergleichen ohne Beachtung der Groß-/Kleinschreibung ordnet CompareString normalerweise das Kleinbuchstaben "i" dem Großbuchstaben "I" zu, auch wenn das Gebietsschema türkisch oder aserbaidschanisch ist. Die NORM_LINGUISTIC_CASING Flagge setzt dieses Verhalten für Türkisch oder Aserbaidschanisch außer Kraft. Wenn dieses Flag in Verbindung mit türkisch oder aserbaidschanisch angegeben wird, ist LATIN SMALL LETTER DOTLESS I (U+0131) die Kleinbuchstabenform von LATIN CAPITAL LETTER I (U+0049) und LATIN SMALL LETTER I (U+0069) ist die Kleinbuchstabenform von LATIN CAPITAL LETTER I WITH DOT ABOVE (U+0130).
Ab Windows 8: Die ANSI-Version der Funktion wird in Winnls.h deklariert, und die Unicode-Version wird in Stringapiset.h deklariert. Vor Windows 8 wurden beide Versionen in Winnls.h deklariert.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | stringapiset.h (einschließlich Windows.h) |
Bibliothek | Kernel32.lib |
DLL | Kernel32.dll |
Siehe auch
Behandeln der Sortierung in Ihren Anwendungen
Unterstützung für nationale Sprachen
Nationale Sprachunterstützungsfunktionen
Sicherheitsüberlegungen: Internationale Features
Verwenden der Unicode-Normalisierung zum Darstellen von Zeichenfolgen