Sdílet prostřednictvím


_strncoll, _wcsncoll, _mbsncoll, _strncoll_l, _wcsncoll_l, _mbsncoll_l

Porovná řetězce pomocí informací specifických pro národní prostředí.

Důležitá poznámkaDůležité

_mbsncolla _mbsncoll_l nelze použít v aplikacích, které jsou spuštěny v Windows Runtime.Další informace naleznete v tématu CRT funkce nejsou podporovány s /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
    Řetězce zakončené znakem null pro porovnání.

  • count
    Počet znaků, které chcete porovnat.

  • locale
    Národní prostředí pro použití.

Vrácená hodnota

Každá z těchto funkcí vrací hodnotu, která označuje vztah podřetězce string1 a string2, takto.

Vrácená hodnota

Vztah řetězec1 k řetězec2

< 0

string1je menší než string2.

0

string1je totožný s string2.

> 0

string1 je větší než string2.

Každá z těchto funkcí vrací _NLSCMPERROR.Chcete-li použít _NLSCMPERROR, STRING.h nebo MBSTRING.h._wcsncollmůže selhat, pokud buď string1 nebo string2 obsahuje širokého znaku kódy, které jsou mimo doménu pořadí řazení.Dojde-li k chybě, _wcsncoll mohou errno na EINVAL.Chcete-li vyhledat chyby na volání _wcsncoll, nastavte errno 0 a potom zkontrolujte, zda errno po volání _wcsncoll.

Poznámky

Každá z těchto funkcí se provádí porovnání velká a malá písmena prvního count znaků v string1 a string2, podle znakovou stránku, která je právě používán.Tyto funkce použijte, pouze v případě, že je rozdíl mezi pořadí sady znaků a pořadí lexicographic znak v kódu stránky a tento rozdíl má význam pro porovnávání řetězců.Pořadí sady znaků je závislé na národním prostředí.Verze těchto funkcí, které nemají _l příponu použít aktuální národní prostředí, ale verze, které mají _l příponu pomocí národního prostředí, které jsou předány v.Další informace naleznete v tématu Národní prostředí.

Všechny tyto funkce ověření jejich parametrů.Pokud string1 nebo string2 je ukazatel s hodnotou null, nebo count je větší než INT_MAX, je vyvolána obslužná rutina neplatný parametr, jak je popsáno v Ověření parametrů.Pokud je povoleno zpracování, chcete-li pokračovat, tyto funkce vracejí _NLSCMPERROR a errno na EINVAL.

Mapování rutiny obecného textu

TCHAR.Byla zahájena rutina h

_UNICODE & _MBCS není definováno

_MBCS, definice

_UNICODE definována

_tcsnccoll

_strncoll

_mbsncoll

_wcsncoll

_tcsncoll

_strncoll

_mbsnbcoll

_wcsncoll

Požadavky

Byla zahájena rutina

Požadované záhlaví

_strncoll, _strncoll_l

<string.h>

_wcsncoll, _wcsncoll_l

<wchar.h> nebo <string.h>

_mbsncoll, _mbsncoll_l

<mbstring.h>

Další informace o kompatibilitě, viz Kompatibilita.

Ekvivalent v rozhraní .NET Framework

System::String::Compare

Viz také

Referenční dokumentace

Národní prostředí

Manipulaci s řetězci (CRT)

Funkce 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