Udostępnij za pośrednictwem


_strncoll, _wcsncoll, _mbsncoll, _strncoll_l, _wcsncoll_l, _mbsncoll_l

Porównuje ciągi przy użyciu informacje specyficzne dla ustawień regionalnych.

Ważna uwagaWażne

_mbsncolli _mbsncoll_l nie można używać w aplikacji, których wykonywanie w Środowisko wykonawcze systemu Windows.Aby uzyskać więcej informacji, zobacz CRT funkcje nie obsł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
    Zakończony zerem ciągów do porównania.

  • count
    Liczba znaków do porównania.

  • locale
    Ustawienia regionalne używane.

Wartość zwracana

Każda z tych funkcji zwróci wartość, która wskazuje relację podciągów z string1 i string2w następujący.

Zwracana wartość

Relacja ciąg1 do ciąg2

< 0

string1jest mniejsza niż string2.

0

string1jest identyczny z string2.

> 0

string1jest większa niż string2.

Każdej 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 szerokich znaków, które są poza domeną sekwencji sortowania.Gdy wystąpi błąd, _wcsncoll może ustalić errno do EINVAL.Aby sprawdzić, czy błąd w wywołaniu _wcsncoll, zestaw errno na 0, a następnie sprawdź errno po wywołaniu _wcsncoll.

Uwagi

Każda z tych funkcji wykonuje porównanie uwzględniające wielkość liter pierwszego count znaków w string1 i string2, zgodnie z strona kodowa, która jest aktualnie używany.Tych funkcji należy używać, tylko wtedy, gdy istnieje różnica między kolejnością zestaw znaków i kolejność znaków leksykograficznych kodowa i w przypadku, gdy różnica ta ma znaczenie dla porównania ciągów.Kolejność zestaw znaków jest zależne od ustawień lokalnych.Wersje tych funkcji, które nie mają _l używanie sufiks bieżące ustawienia regionalne, ale wersji, które mają _l sufiks Użyj ustawień regionalnych, który jest przekazywana.Aby uzyskać więcej informacji, zobacz Ustawienia regionalne.

Wszystkie te funkcje sprawdzania poprawności ich parametrów.Jeśli każda string1 lub string2 jest pusty wskaźnik, 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.

Tekst rodzajowy rutynowych mapowania

TCHAR.Rozpoczęto wykonywanie procedury h

_UNICODE & _MBCS nie zdefiniowany

_MBCS, definicja

_UNICODE, definicja

_tcsnccoll

_strncoll

_mbsncoll

_wcsncoll

_tcsncoll

_strncoll

_mbsnbcoll

_wcsncoll

Wymagania

Rozpoczęto wykonywanie procedury

Wymaganego nagłówka

_strncoll, _strncoll_l

<string.h>

_wcsncoll, _wcsncoll_l

<wchar.h> lub <string.h>

_mbsncoll, _mbsncoll_l

<mbstring.h>

Aby uzyskać dodatkowe informacje o zgodności, zobacz Zgodność.

Odpowiednik w programie .NET Framework

System::String::COMPARE

Zobacz też

Informacje

Ustawienia regionalne

Manipulowanie ciągami (CRT)

Funkcje strcoll

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