strcoll Funktionen
Jede der strcoll und Funktionen wcscoll Vergleich von zwei Zeichenfolgen nach der LC_COLLATE Kategorieeinstellung derzeit verwendeten Codepage vom Gebietsschema.Jede der _mbscoll-Funktionen werden zwei Zeichenfolgen anhand der derzeit verwendeten Mehrbyte-Codepage.Verwenden Sie die coll-Funktionen für Zeichenfolgenvergleiche, wenn sich der Zeichensatz der lexikografischen Reihenfolge und gibt Zeichenreihenfolge in der aktuellen Codepage und dieser Differenz für den Vergleich von Interesse ist.Verwenden Sie die entsprechenden cmp-Funktionen, um nur für Zeichenfolgen auf Gleichheit geprüft werden soll.
strcoll Funktionen
SBCS |
Unicode |
MBCS |
Beschreibung |
---|---|---|---|
Sortieren Sie zwei Zeichenfolgen |
|||
Sortieren Sie zwei Zeichenfolgen (ohne Berücksichtigung von Groß- und Kleinschreibung) |
|||
Sortieren Sie count erste Zeichen von zwei Zeichenfolgen |
|||
Sortieren Sie count erste Zeichen von zwei Zeichenfolgen (ohne Berücksichtigung von Groß- und Kleinschreibung) |
Hinweise
Die Versionen von Einzelbytezeichens (SBCS) dieser Funktionen (strcoll, stricoll, _strncollund _strnicoll) vergleichen und string1string2 entsprechend der LC_COLLATE Kategorieeinstellung des aktuellen Gebietsschemas.Diese Funktionen unterscheiden sich von den entsprechenden strcmp-Funktionen darin, dass die strcoll Codepage Gebietsschema Funktionen verwenden, die Informationen zu Sortierungen bereitstellt.Verwenden Sie für Zeichenfolgenvergleiche in Gebietsschemas, wo die Reihenfolge der Zeichensatz und die lexikografische Zeichenreihenfolge unterscheiden, sollten die strcoll Features anstelle der entsprechenden strcmp-Funktionen verwendet werden.Weitere Informationen zu LC_COLLATEfinden Sie unter setlocale.
Bei einigen Codepages und entsprechende Zeichensätze unterscheidet sich möglicherweise die Reihenfolge der Zeichen im Zeichensatz von der lexikografischen Zeichenreihenfolge.Im Gebietsschema „C“ ist dies nicht der Fall: Die Reihenfolge der Zeichen im ASCII-Zeichensatz ist identisch mit der lexikografische Reihenfolge der Zeichen.In bestimmten europäischen Codepages beispielsweise das Zeichen „a“ (Wert 0x61) geht dem Zeichen „ä 0xE4 Wert (“) im Zeichensatz, jedoch vor dem Zeichen „ä“ lexikografisch dem Zeichen „a“ voran.So fügen Sie einen lexikografischen Vergleich in eine entsprechende Instanz ausführen, verwenden Sie statt strcollstrcmp.Alternativ können Sie strxfrm auf den ursprünglichen Zeichenfolgen verwenden, verwenden strcmp auf den resultierenden Zeichenfolgen gewonnen.
strcoll, stricoll, _strncollund behandeln _strnicoll Mehrbyte-Zeichenfolgen automatisch entsprechend der derzeit verwendeten Codepage Gebietsschema, wie ihre Äquivalente Breitzeichen (Unicode).Die Versionen dieser Funktionen (MBCS) Mehrbytezeichens Sortieren von Zeichenfolgen jedoch auf einer Seite Zeichen entsprechend der derzeit verwendeten Mehrbyte-Codepage.
Da die Funktionen coll lexikografisch für den Vergleich von Zeichenfolgen sortiert werden, während der Test cmp-Funktionen einfach nach Zeichenfolgen, die Verweisgleichheit coll-Funktionen viel langsamer als die entsprechenden cmp-Versionen vorgesehen sind.Daher sollten die coll-Funktionen nur verwendet werden, wenn sich der Zeichensatz der lexikografischen Reihenfolge und gibt Zeichenreihenfolge in der aktuellen Codepage und dieser Differenz relevant für den Zeichenfolgenvergleich ist.
Siehe auch
Referenz
Zeichenfolgenbearbeitung (CRT)
_mbsnbcoll, _mbsnbcoll_l, _mbsnbicoll, _mbsnbicoll_l
strncmp, wcsncmp, _mbsncmp, _mbsncmp_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l