Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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