Freigeben über


_strnicoll, , _wcsnicoll_mbsnicoll, _strnicoll_l, , _wcsnicoll_l_mbsnicoll_l

Vergleicht Zeichenfolgen mithilfe gebietsschemaspezifischen Informationen.

Wichtig

_mbsnicoll und _mbsnicoll_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 _strnicoll(
   const char *string1,
   const char *string2,
   size_t count
);
int _wcsnicoll(
   const wchar_t *string1,
   const wchar_t *string2 ,
   size_t count
);
int _mbsnicoll(
   const unsigned char *string1,
   const unsigned char *string2,
   size_t count
);
int _strnicoll_l(
   const char *string1,
   const char *string2,
   size_t count,
   _locale_t locale
);
int _wcsnicoll_l(
   const wchar_t *string1,
   const wchar_t *string2 ,
   size_t count,
   _locale_t locale
);
int _mbsnicoll_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
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 Verhältnis von string1 zu string2
< 0 string1 kleiner als string2
0 string1 identisch mit string2
> 0 string1 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. _wcsnicoll 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 _wcsnicollerrno möglicherweise auf EINVAL fest. Um einen Aufruf von _wcsnicoll auf einen Fehler zu überprüfen, legen Sie errno auf 0 fest, und überprüfen Sie dann errno, nachdem Sie _wcsnicoll aufgerufen haben.

Hinweise

Entsprechend der Codepage vergleicht jede dieser Funktionen ohne Berücksichtigung der Groß- und Kleinschreibung die ersten count-Zeichen in string1 und string2. Diese Funktionen sollten nur verwendet werden, wenn es einen Unterschied zwischen der Zeichensatzreihenfolge und der lexikografischen Zeichenreihenfolge auf der Codeseite gibt und dieser Unterschied für den Zeichenfolgenvergleich von Interesse ist. Die Versionen dieser Funktionen ohne das _l-Suffix verwenden das aktuelle Gebietsschema und die aktuelle Codepage. Die Versionen mit dem _l Suffix sind identisch, mit der Ausnahme, dass sie stattdessen das übergebene Gebietsschema verwenden. Weitere Informationen finden Sie unter Locale.

Mit allen diesen Funktionen werden ihre Parameter überprüft. Wenn es sich um string1 einen Nullzeiger handelt oder string2 die Anzahl größer als INT_MAXist, 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
_tcsncicoll _strnicoll _mbsnbicoll _wcsnicoll
_tcsnicoll _strnicoll _mbsnbicoll _wcsnicoll
_tcsnicoll_l _strnicoll_l _mbsnbicoll_l _wcsnicoll_l

Anforderungen

Routine Erforderlicher Header
_strnicoll, _strnicoll_l <string.h>
_wcsnicoll, _wcsnicoll_l <wchar.h> oder <string.h>
_mbsnicoll, _mbsnicoll_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