_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 _NLSCMPERROR
wartość , 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