Udostępnij za pośrednictwem


_strncoll, _wcsncoll, _mbsncoll, _strncoll_l, _wcsncoll_l, _mbsncoll_l

Porównuje ciągi przy użyciu informacji specyficznych dla danej lokalizacji.

Ważna uwagaWażne

_mbsncoll i _mbsncoll_l nie można używać w aplikacjach korzystających ze Środowisko wykonawcze systemu Windows.Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane przez /ZW.

int _strncoll(
   const char *string1,
   const char *string2,
   size_t count 
);
int _wcsncoll(
   const wchar_t *string1,
   const wchar_t *string2,
   size_t count 
);
int _mbsncoll(
   const unsigned char *string1,
   const unsigned char *string2,
   size_t count 
);
int _strncoll_l(
   const char *string1,
   const char *string2,
   size_t count,
   _locale_t locale
);
int _wcsncoll_l(
   const wchar_t *string1,
   const wchar_t *string2,
   size_t count,
   _locale_t locale
);
int _mbsncoll_l(
   const unsigned char *string1,
   const unsigned char *string2,
   size_t count,
   _locale_t locale
);

Parametry

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

  • count
    Liczba znaków do porównania.

  • locale
    Ustawienia regionalne do użycia.

Wartość zwracana

Każda z tych funkcji zwraca wartość, która wskazuje relację podciągów z string1 i string2, w następujący sposób.

Wartość zwrócona

Relacja ciąg1 do ciąg2

< 0

Wartość parametru string1 jest mniejsza od string2.

0

string1 jest identyczna z string2.

> 0

Wartość parametru string1 jest większa niż wartość obiektu string2.

Każda z tych funkcji zwraca _NLSCMPERROR.Aby użyć _NLSCMPERROR, STRING.h lub MBSTRING.h._wcsncollmoże się nie powieść, jeśli każda string1 lub string2 zawiera kody znaków wide znajdujących się poza domeną sekwencji sortowania.Gdy wystąpi błąd, _wcsncoll może ustawić errno jako EINVAL.Aby sprawdzić, czy błąd na wywołanie _wcsncoll, ustaw errno na wartość 0, a następnie sprawdź errno po wywołaniu _wcsncoll.

Uwagi

Każda z tych funkcji wykonuje porównania uwzględniającego wielkość liter pierwszego count znaków w string1 i string2, według stronę kodową, która jest aktualnie w użyciu.Korzystania z tych funkcji, tylko wtedy, gdy istnieje różnica pomiędzy kolejność znaków leksykograficznych i kolejność zestawu znaków strony kodowej, a różnica ta ma znaczenie dla porównania ciągów.Kolejność zestaw znaków zależy od ustawień regionalnych.Wersje te funkcje, które nie mają _l sufiks Użyj bieżących ustawień regionalnych, ale wersji, które mają _l sufiks Użyj ustawień regionalnych, który jest przekazywana.Aby uzyskać więcej informacji, zobacz Regionalne.

Wszystkie te funkcje sprawdzają poprawność swoich parametrów.Jeśli każda string1 lub string2 jest wskaźnik zerowy lub count jest większa od INT_MAX, obsługi nieprawidłowy parametr jest wywoływany, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może być kontynuowane, te funkcje zwracają _NLSCMPERROR i ustawiają errno na EINVAL.

Rutynowe mapowania zwykłego tekstu

Procedura Tchar.h

_UNICODE & _MBCS nie zdefiniowano

_MBCS zdefiniowano

_UNICODE zdefiniowany

_tcsnccoll

_strncoll

_mbsncoll

_wcsncoll

_tcsncoll

_strncoll

_mbsnbcoll

_wcsncoll

Wymagania

Procedura

Wymagany nagłówek

_strncoll, _strncoll_l

<Ciąg>

_wcsncoll, _wcsncoll_l

<wchar.h> lub <string.h>

_mbsncoll, _mbsncoll_l

<mbCiąg.h>

Dodatkowe informacje o zgodności – zobacz: Zgodność.

Odpowiednik w programie .NET Framework

Porównaj system ciągów

Zobacz też

Informacje

Regionalne

Manipulowanie ciągami (CRT)

strcoll — Funkcje

localeconv

_mbsnbcoll, _mbsnbcoll_l, _mbsnbicoll, _mbsnbicoll_l

setlocale, _wsetlocale

strcmp, wcscmp, _mbscmp

_stricmp, _wcsicmp, _mbsicmp, _stricmp_l, _wcsicmp_l, _mbsicmp_l

strncmp, wcsncmp, _mbsncmp, _mbsncmp_l

_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l

strxfrm, wcsxfrm, _strxfrm_l, _wcsxfrm_l