Udostępnij za pośrednictwem


_mbsnbicmp, _mbsnbicmp_l

Porównuje n bajtów dwóch ciągów wielobajtowych znaków i ignoruje wielkość liter.

Ważne

Tego interfejsu API nie można używać w aplikacjach wykonywanych w środowisko wykonawcze systemu Windows. Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane w aplikacjach platforma uniwersalna systemu Windows.

Składnia

int _mbsnbicmp(
   const unsigned char *string1,
   const unsigned char *string2,
   size_t count
);

Parametry

string1, string2
Ciągi zakończone wartością null do porównania.

count
Liczba bajtów do porównania.

Wartość zwracana

Wartość zwracana wskazuje relację między podciągami.

Wartość zwracana opis
< 0 string1 podciąg mniej niż string2 podciąg.
0 string1 podciąg identyczny z string2 podciągem.
> 0 string1 podciąg większy niż string2 podciąg.

W przypadku błędu _mbsnbicmp zwraca _NLSCMPERRORwartość , która jest zdefiniowana w parametrach String.h i Mbstring.h.

Uwagi

Funkcja _mbsnbicmp wykonuje porządkowe porównanie co najwyżej pierwszych count bajtów string1 i string2. Porównanie jest wykonywane przez przekonwertowanie każdego znaku na małe litery; _mbsnbcmp jest wersją z uwzględnieniem wielkości liter ._mbsnbicmp Porównanie kończy się, jeśli znak null zakończenia jest osiągany w obu ciągach, zanim count zostaną porównane znaki. Jeśli ciągi są równe po osiągnięciu znaku null zakończenia w ciągu przed count porównywaniem znaków, krótszy ciąg jest mniejszy.

_mbsnbicmp jest podobny do _mbsnbcmp, z tą różnicą, że porównuje ciągi do count bajtów zamiast znaków.

Dwa ciągi zawierające znaki znajdujące się między znakami "Z" i "a" w tabeli ASCII ("[", "\", "]", "^", "_" i "" różnią się w zależności od ich wielkości liter. Na przykład dwa ciągi "ABCDE" i "ABCD^" porównują jeden sposób, jeśli porównanie jest małe litery ("abcde" > "abcd^") i w inny sposób ("ABCDE" < "ABCD^"), jeśli jest to wielkie litery.

_mbsnbicmp rozpoznaje sekwencje wielobajtowe znaków zgodnie ze stroną kodową wielobajtową, która jest obecnie używana. Nie ma to wpływu na bieżące ustawienie ustawień regionalnych.

Jeśli element string1 lub string2 jest wskaźnikiem o wartości null, _mbsnbicmp wywołuje nieprawidłową procedurę obsługi parametrów zgodnie z opisem w temacie Walidacja parametru. Jeśli wykonywanie jest dozwolone do kontynuowania, funkcja zwraca _NLSCMPERROR i ustawia wartość errno EINVAL.

Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.

Mapowania procedur tekstu ogólnego

Procedura tchar.h _UNICODE i _MBCS niezdefiniowane _MBCS zdefiniowany _UNICODE zdefiniowany
_tcsnicmp _strnicmp _mbsnbicmp _wcsnicmp
_tcsnicmp_l _strnicmp_l _mbsnbicmp_l _wcsnicmp_l

Wymagania

Procedura Wymagany nagłówek
_mbsnbicmp <mbstring.h>

Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.

Przykład

Zobacz przykład dla elementu , _mbsnbcmp_l._mbsnbcmp

Zobacz też

Manipulowanie ciągami
_mbsnbcat, _mbsnbcat_l
_mbsnbcmp, _mbsnbcmp_l
_stricmp, , _wcsicmp, _mbsicmp, _stricmp_l, , _wcsicmp_l_mbsicmp_l