_strncoll
, , _wcsncoll
_mbsncoll
, _strncoll_l
, , _wcsncoll_l
_mbsncoll_l
Vergleicht Zeichenfolgen mithilfe gebietsschemaspezifischen Informationen.
Wichtig
_mbsncoll
und _mbsncoll_l
können nicht in Anwendungen verwendet werden, die in Windows-Runtime ausgeführt werden. Weitere Informationen finden Sie im Artikel CRT functions not supported in Universal Windows Platform apps (In Apps für die universelle Windows-Plattform nicht unterstützte CRT-Funktionen).
Syntax
int _strncoll(
const char *string1,
const char *string2,
size_t count
);
int _wcsncoll(
const wchar_t *string1,
const wchar_t *string2,
size_t count
);
int _mbsncoll(
const unsigned char *string1,
const unsigned char *string2,
size_t count
);
int _strncoll_l(
const char *string1,
const char *string2,
size_t count,
_locale_t locale
);
int _wcsncoll_l(
const wchar_t *string1,
const wchar_t *string2,
size_t count,
_locale_t locale
);
int _mbsncoll_l(
const unsigned char *string1,
const unsigned char *string2,
size_t count,
_locale_t locale
);
Parameter
string1
, string2
Zu vergleichende mit NULL endende Zeichenfolgen.
count
Die Anzahl der zu vergleichenden Zeichen.
locale
Das zu verwendende Gebietsschema.
Rückgabewert
Jede dieser Funktionen gibt einen Wert zurück, der die Beziehung der Teilzeichenfolgen von string1
und string2
wie folgt angibt.
Rückgabewert | Beziehung von string1 zu string2 |
---|---|
< 0 | string1 ist kleiner als string2 . |
0 | string1 ist identisch mit string2 . |
> 0 | string1 ist größer als string2 . |
Jede dieser Funktion gibt _NLSCMPERROR
zurück. Um _NLSCMPERROR
zu verwenden, fügen Sie STRING.h oder MBSTRING.h ein. _wcsncoll
kann fehlschlagen, wenn string1
oder string2
NULL ist oder Codes mit Breitzeichen außerhalb der Domäne der Sortierreihenfolge enthält. Wenn ein Fehler auftritt, legt _wcsncoll
errno
möglicherweise auf EINVAL
fest. Um bei einem Anruf _wcsncoll
nach einem Fehler zu suchen, legen Sie ihn auf 0 fest errno
, und überprüfen Sie errno
dann nach dem _wcsncoll
Anruf.
Hinweise
Entsprechend der aktuell verwendeten Codepage vergleicht jede dieser Funktionen ohne Berücksichtigung der Groß- und Kleinschreibung die ersten count
-Zeichen in string1
und string2
. Verwenden Sie diese Funktionen nur, wenn es einen Unterschied zwischen der Zeichensatzreihenfolge und der lexikografischen Zeichenreihenfolge auf der Codeseite gibt, und wenn dieser Unterschied für den Zeichenfolgenvergleich wichtig ist. Die Reihenfolge des Zeichensatzes ist vom Gebietsschema abhängig. Die Versionen dieser Funktionen ohne das _l
-Suffix verwenden das aktuelle Gebietsschemas, aber die Versionen mit dem _l
-Suffix verwenden das übergebene Gebietsschema. Weitere Informationen finden Sie unter Locale.
Mit allen diesen Funktionen werden ihre Parameter überprüft. Wenn es sich um string1
einen Nullzeiger handelt oder count
string2
größer als INT_MAX
ist, wird der ungültige Parameterhandler aufgerufen, wie in der Parameterüberprüfung beschrieben. Wenn die weitere Ausführung zugelassen wird, geben diese Funktionen _NLSCMPERROR
zurück und stellen errno
auf EINVAL
ein.
Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Wie Sie dieses Verhalten ändern, erfahren Sie unter Globaler Status in der CRT.
Mapping generischer Textroutinen
TCHAR.H-Routine | _UNICODE und _MBCS nicht definiert |
_MBCS definiert |
_UNICODE definiert |
---|---|---|---|
_tcsnccoll |
_strncoll |
_mbsncoll |
_wcsncoll |
_tcsncoll |
_strncoll |
_mbsnbcoll |
_wcsncoll |
Anforderungen
Routine | Erforderlicher Header |
---|---|
_strncoll , _strncoll_l |
<string.h> |
_wcsncoll , _wcsncoll_l |
<wchar.h> oder <string.h> |
_mbsncoll , _mbsncoll_l |
<mbstring.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Siehe auch
Gebietsschema
Zeichenfolgenbearbeitung
strcoll
-Funktionen
localeconv
_mbsnbcoll
, , _mbsnbcoll_l
_mbsnbicoll
_mbsnbicoll_l
setlocale
, _wsetlocale
strcmp
, wcscmp
_mbscmp
_stricmp
, , _wcsicmp
_mbsicmp
, _stricmp_l
, , _wcsicmp_l
_mbsicmp_l
strncmp
, , wcsncmp
_mbsncmp
_mbsncmp_l
_strnicmp
, , _wcsnicmp
_mbsnicmp
, _strnicmp_l
, , _wcsnicmp_l
_mbsnicmp_l
strxfrm
, , wcsxfrm
_strxfrm_l
_wcsxfrm_l