_mbsnbcoll, _mbsnbcoll_l, _mbsnbicoll, _mbsnbicoll_l
Porównuje n bajtów dwa ciągi znaków wielobajtowych, przy użyciu kodu wielobajtowych strony informacji.
Ważne |
---|
Ten interfejs API nie można używać w aplikacji, których wykonywanie w czasie wykonywania systemu Windows.Aby uzyskać więcej informacji, zobacz CRT funkcje nie obsługiwane przez /ZW. |
int _mbsnbcoll(
const unsigned char *string1,
const unsigned char *string2,
size_t count
);
int _mbsnbcoll_l(
const unsigned char *string1,
const unsigned char *string2,
size_t count,
_locale_t locale
);
int _mbsnbicoll(
const unsigned char *string1,
const unsigned char *string2,
size_t count
);
int _mbsnbicoll_l(
const unsigned char *string1,
const unsigned char *string2,
size_t count,
_locale_t locale
);
Parametry
string1, string2
Ciągi znaków do porównania.count
Liczba bajtów do porównania.locale
Ustawienia regionalne używane.
Wartość zwracana
Wartość zwracana określa relację podciągów z string1 i string2.
Zwracana wartość |
Opis |
---|---|
< 0 |
string1podciąg mniej niż string2 podciągu. |
0 |
string1podciąg identyczne z string2 podciągu. |
> 0 |
string1podciąg większa niż string2 podciągu. |
Jeśli string1 lub string2 jest NULL lub count jest większa niż INT_MAX, program obsługi nieprawidłowy parametr jest wywoływana, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może kontynuować, funkcje te zwracają _NLSCMPERROR i errno do EINVAL.Aby użyć _NLSCMPERROR, String.h lub Mbstring.h.
Uwagi
Każda z tych funkcji posortuje, co najwyżej pierwszy count bajtów w string1 i string2 i zwraca wartość określającą relację między wynikowy podciągów string1 i string2.Jeżeli końcowy bajt w podciąg string1 lub string2 jest wiodącego bajtu, nie znajduje się w porównaniu; tych funkcji należy porównać tylko całe znaki w podciągów._mbsnbicolljest ona rozróżniana wielkość liter do _mbsnbcoll.Jak _mbsnbcmp i _mbsnbicmp, _mbsnbcoll i _mbsnbicoll porównuje dwa ciągi znaków wielobajtowych w leksykograficznych kolejności określonej przez wielobajtowe Strona kodowa aktualnie w użyciu.
Dla niektórych stron kodowych i odpowiednich zestawów znaków kolejność znaków w zestawie znaków może się różnić od kolejność znaków leksykograficznych.W ustawieniach regionalnych "C", to się nie stanie: kolejność znaków w zestawie znaków ASCII jest taka sama jak kolejność leksykograficznych znaków.Jednak na niektórych stronach Europejskiego kodu dróg, na przykład, znak wartość "" (0x61) poprzedza znak "ä" (0xE4) w postaci wartość, lecz postać "ä" poprzedza znak '' leksykograficznym.Aby przeprowadzić leksykograficznych porównania ciągów bajtów w takim przypadku, należy użyć _mbsnbcoll a nie _mbsnbcmp; Aby sprawdzić, czy tylko ciąg znaków równości, należy użyć _mbsnbcmp.
Ponieważ coll funkcje zestawia ciągów leksykograficznym dla porównania, podczas gdy cmp funkcji po prostu test dla równości string, coll funkcje są znacznie wolniej niż odpowiadająca cmp wersje.W związku z tym coll funkcji należy używać tylko wtedy, gdy istnieje różnica między kolejnością zestaw znaków i kolejność znaków leksykograficznych w bieżącej strony kodowej i ta różnica leży w interesie do porównania.
Wartość produkcji jest zależny od ustawienia z LC_CTYPE kategorii ustawienie regionalne tzn. zobacz setlocale Aby uzyskać więcej informacji.Wersje te funkcje, bez _l sufiks Użyj bieżących ustawień regionalnych tego zachowania zależne od ustawień lokalnych; wersje z _l sufiks są identyczne z tym, że używają zamiast przekazany parametr ustawień regionalnych.Aby uzyskać więcej informacji, zobacz Ustawienia regionalne.
Tekst rodzajowy rutynowych mapowania
Rozpoczęto wykonywanie procedury TCHAR.h |
_UNICODE i _MBCS nie zdefiniowany |
_MBCS, definicja |
_UNICODE, definicja |
---|---|---|---|
_tcsncoll |
_mbsnbcoll |
||
_tcsncoll_l |
_strncoll, _wcsncoll, _mbsncoll, _strncoll_l, _wcsncoll_l, _mbsncoll_l |
_mbsnbcoll_l |
|
_tcsnicoll |
_mbsnbicoll |
||
_tcsnicoll_l |
_mbsnbicoll_l |
Wymagania
Rozpoczęto wykonywanie procedury |
Wymaganego nagłówka |
---|---|
_mbsnbcoll |
<mbstring.h> |
_mbsnbcoll_l |
<mbstring.h> |
_mbsnbicoll |
<mbstring.h> |
_mbsnbicoll_l |
<mbstring.h> |
Informacji dotyczących zgodności, zobacz zgodności we wprowadzeniu.
Zobacz też
Informacje
strncmp, wcsncmp, _mbsncmp, _mbsncmp_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l