Freigeben über


_strncoll, _wcsncoll, _mbsncoll, _strncoll_l, _wcsncoll_l, _mbsncoll_l

Vergleicht Zeichenfolgen mithilfe gebietsschemaspezifischen Informationen.

Wichtig

_mbsncoll und _mbsncoll_l können in Anwendungen, die in Windows-Runtime ausgeführt werden, nicht verwendet werden.Weitere Informationen finden Sie unter CRT-Funktionen nicht mit /ZW unterstützt.

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, der der Beziehung von Teilzeichenfolgen von string1 und string2 angibt, wie folgt zurück.

Rückgabewert

Verhältnis 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 entweder STRING.h oder MBSTRING.h ein. _wcsncoll kann fehlschlagen, wenn string1 oder string2 Zeichenkodes enthält, die außerhalb der Domäne der richtigen Sortierreihenfolge befinden. Wenn ein Fehler auftritt, legt _wcsncollerrno möglicherweise auf EINVAL fest. Um für einen Fehler in einem Aufruf von _wcsncoll zu überprüfen, legen Sie errno auf 0 und überprüfen dann errno wenn Sie _wcsncoll aufrufen.

Hinweise

Jede dieser Funktionen führt einen Vergleich die Groß-/Kleinschreibung beachtet der ersten count Zeichen in string1 und string2, entsprechend der Codepage aus, die derzeit verwendet wird. Verwenden Sie diese Funktionen nur, wenn es einen Unterschied zwischen der Zeichensatzreihenfolge und der lexikografischen Reihenfolge in der Codepage gibt und dieser Unterschied relevant für den Zeichenfolgenvergleich ist. Die Zeichensatzreihenfolge ist gebietsschemaabhängig. Die Versionen dieser Funktionen, die nicht die _l Suffixverwendung das aktuelle Gebietsschema haben, aber die Versionen, die die _l Suffixverwendung das Gebietsschema haben, das übergeben wird. Weitere Informationen finden Sie unter Locale.

Mit allen diesen Funktionen werden ihre Parameter überprüft. Wenn entweder string1 oder string2 ein NULL-Zeiger ist oder count größer als INT_MAX ist, wird der ungültige Parameterhandler aufgerufen, wie in Parametervalidierung beschrieben. Wenn die weitere Ausführung zugelassen wird, geben diese Funktionen _NLSCMPERROR zurück und stellen errno auf EINVAL ein.

Zuordnung generischer Textroutinen

TCHAR.H-Routine

_UNICODE & _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>

Zusätzliche Informationen zur Kompatibilität finden Sie unter Kompatibilität.

.NET Framework-Entsprechung

System::String::Compare

Siehe auch

Referenz

Locale

Zeichenfolgenbearbeitung (CRT)

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