_strnicmp
, , _wcsnicmp
_mbsnicmp
, _strnicmp_l
, , _wcsnicmp_l
_mbsnicmp_l
Vergleicht die angegebene Anzahl von Zeichen zweier Zeichenfolgen ohne Berücksichtigung von Groß-/Kleinbuchstaben.
Wichtig
_mbsnicmp
und _mbsnicmp_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 _strnicmp(
const char *string1,
const char *string2,
size_t count
);
int _wcsnicmp(
const wchar_t *string1,
const wchar_t *string2,
size_t count
);
int _mbsnicmp(
const unsigned char *string1,
const unsigned char *string2,
size_t count
);
int _strnicmp_l(
const char *string1,
const char *string2,
size_t count,
_locale_t locale
);
int _wcsnicmp_l(
const wchar_t *string1,
const wchar_t *string2,
size_t count,
_locale_t locale
);
int _mbsnicmp_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
Zu verwendendes Gebietsschema.
Rückgabewert
Gibt die Beziehung zwischen den untergeordneten Zeichenfolgen wie folgt an.
Rückgabewert | Beschreibung |
---|---|
< 0 | Die untergeordnete Zeichenfolge string1 ist kleiner als die untergeordnete Zeichenfolge string2 . |
0 | Die untergeordnete Zeichenfolge string1 ist mit der untergeordneten Zeichenfolge string2 identisch. |
> 0 | Die untergeordnete Zeichenfolge string1 ist größer als die untergeordnete Zeichenfolge string2 . |
Bei einem Parameterüberprüfungsfehler geben diese Funktionen zurück _NLSCMPERROR
, die in <string.h> und <mbstring.h> definiert sind.
Hinweise
Die _strnicmp
Funktion vergleicht höchstens die ersten count
Zeichen von string1
und string2
. Der Vergleich erfolgt ohne Berücksichtigung der Groß-/Kleinschreibung, indem jedes Zeichen in Kleinbuchstaben konvertiert wird. _strnicmp
ist eine Version von strncmp
ohne Berücksichtigung von Groß- und Kleinschreibung. Der Vergleich endet, wenn in jeder Zeichenfolge beendende NULL-Zeichen erreicht wird, bevor count
Zeichen verglichen wurden. Wenn beim Erreichen des beendenden NULL-Zeichens die Zeichenfolgen gleich sind, bevor count
Zeichen verglichen wurden, ist die kürzere Zeichenfolge kleiner.
Die Zeichen von 91 bis 96 in der ASCII-Tabelle ('[', '\', ']', '^', '_' und '') werden als kleiner als jedes alphabetische Zeichen ausgewertet. Diese Reihenfolge ist identisch mit der von stricmp
.
_wcsnicmp
und _mbsnicmp
sind Breitzeichen- und Multibytezeichenversionen von _strnicmp
. Bei den Argumenten handelt es _wcsnicmp
sich um Zeichenfolgen mit breitem Zeichen. Die Argumente sind _mbsnicmp
Multibyte-Zeichenfolgen. _mbsnicmp
erkennt Multibyte-Zeichenfolgen entsprechend der aktuellen Multibyte-Codepage und gibt bei einem Fehler _NLSCMPERROR
zurück. Weitere Informationen finden Sie unter Codeseiten. Diese drei Funktionen verhalten sich andernfalls identisch. Diese Funktionen werden von der Gebietsschemaeinstellung beeinflusst: Die Versionen, die nicht über die _l
-Suffix verfügen, verwenden das aktuelle Gebietsschema für ihr gebietsschemaabhängiges Verhalten, und die Versionen mit _l
-Suffix verwenden stattdessen locale
, das übergeben wird. Weitere Informationen finden Sie unter Locale.
Mit allen diesen Funktionen werden ihre Parameter überprüft. Wenn es sich um string1
string2
einen Nullzeiger handelt, 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 |
---|---|---|---|
_tcsncicmp |
_strnicmp |
_mbsnicmp |
_wcsnicmp |
_tcsnicmp |
_strnicmp |
_mbsnbicmp |
_wcsnicmp |
_tcsncicmp_l |
_strnicmp_l |
_mbsnicmp_l |
_wcsnicmp_l |
Anforderungen
Routine | Erforderlicher Header |
---|---|
_strnicmp , _strnicmp_l |
<string.h> |
_wcsnicmp , _wcsnicmp_l |
<string.h> oder <wchar.h> |
_mbsnicmp , _mbsnicmp_l |
<mbstring.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Beispiel
Ein Beispiel hierfür finden Sie unter strncmp
.
Siehe auch
Zeichenfolgenbearbeitung
strcat
, wcscat
_mbscat
strcmp
, wcscmp
_mbscmp
strcpy
, wcscpy
_mbscpy
strncat
, , _strncat_l
wcsncat
, _wcsncat_l
, , _mbsncat
_mbsncat_l
strncmp
, , wcsncmp
_mbsncmp
_mbsncmp_l
strncpy
, , _strncpy_l
wcsncpy
, _wcsncpy_l
, , _mbsncpy
_mbsncpy_l
strrchr
, , wcsrchr
_mbsrchr
_mbsrchr_l
_strset
, , _strset_l
_wcsset
, _wcsset_l
, , _mbsset
_mbsset_l
strspn
, , wcsspn
_mbsspn
_mbsspn_l