_mbsnbicmp, _mbsnbicmp_l
Vergleicht n Bytes von zwei Multibyte-Zeichenfolgen und ignoriert die Groß- und Kleinschreibung.
Wichtig
Diese API kann nicht in Anwendungen verwendet werden, die in Windows-Runtime ausgeführt werden.Weitere Informationen finden Sie unter CRT-Funktionen nicht mit /ZW unterstützt.
int _mbsnbicmp( const unsigned char *string1, const unsigned char *string2, size_t count );
Parameter
string1, string2
Zu vergleichende mit NULL endende Zeichenfolgen.count
Anzahl der zu vergleichenden Bytes.
Rückgabewert
Der Rückgabewert gibt die Beziehung zwischen den untergeordneten Zeichenfolgen 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 Fehler gibt _mbsnbcmp _NLSCMPERROR zurück (definiert in String.h und Mbstring.h).
Hinweise
Die _mbsnbicmp-Funktion führt einen Ordinalvergleich von höchstens der ersten count Bytes von string1 und string2 durch. Der Vergleich wird ausgeführt, indem jedes Zeichen in Kleinbuchstaben konvertiert wird; _mbsnbcmp ist eine Version von _mbsnbicmp, bei der die Groß-/Kleinschreibung beachtet wird. 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.
_mbsnbicmp ähnelt _mbsnicmp, mit dem Unterschied dass die Zeichenfolgen nicht nach Zeichen, sondern bis zu count Bytes verglichen werden.
Abhängig von der Großschreibung ist der Vergleich von zwei Zeichenfolgen mit Zeichen zwischen "Z" und "a" in der ASCII-Tabelle ('[', '\', ']', '^', '_' und '`') unterschiedlich. Beispielsweise werden die beiden Zeichenfolgen "ABCDE" und "ABCD^" in eine Richtung verglichen, wenn Kleinschreibung vorliegt ("abcde" > "abcd^") und in die andere Richtung, wenn Großschreibung vorliegt ("ABCDE" < "ABCD^").
_mbsnbicmp erkennt Multibyte-Zeichenfolgen gemäß der aktuellen Multibyte-Codepage. Die aktuelle Gebietsschemaeinstellung nimmt dabei keinen Einfluss.
Wenn entweder string1 oder string2 ein NULL-Zeiger ist, ruft _mbsnbicmp, wie in Parametervalidierung beschrieben, den Handler für ungültige Parameter auf. Wenn die weitere Ausführung zugelassen wird, gibt die Funktion _NLSCMPERROR zurück und setzt errno auf EINVAL.
Zuordnung generischer Textroutinen
Tchar.h-Routine |
_UNICODE und _MBCS nicht definiert |
_MBCS definiert |
_UNICODE definiert |
---|---|---|---|
_tcsnicmp |
_strnicmp |
_mbsnbicmp |
_wcsnicmp |
_tcsnicmp_l |
_strnicmp_l |
_mbsnbicmp_l |
_wcsnicmp_l |
Anforderungen
Routine |
Erforderlicher Header |
---|---|
_mbsnbicmp |
<mbstring.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Beispiel
Ein Beispiel hierfür finden Sie unter _mbsnbcmp, _mbsnbcmp_l.
.NET Framework-Entsprechung
Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.
Siehe auch
Referenz
Zeichenfolgenbearbeitung (CRT)
_stricmp, _wcsicmp, _mbsicmp, _stricmp_l, _wcsicmp_l, _mbsicmp_l