_strncoll, _wcsncoll, _mbsncoll, _strncoll_l, _wcsncoll_l, _mbsncoll_l
Porovná řetězce pomocí informací specifických pro národní prostředí.
Důležité |
---|
_mbsncoll a _mbsncoll_l nelze použít v aplikacích, které jsou spouštěny v prostředí 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ězec zakončený null pro srovnání.count
Počet znaků, které chcete porovnat.locale
Použité národní prostředí.
Vrácená hodnota
Každá z těchto funkcí vrací hodnotu, která označuje vztah mezi podřetězce string1 a string2, tj.
Návratová hodnota |
Vztah řetězec1 k řetězec2 |
---|---|
< 0 |
string1 je menší než string2. |
0 |
Funkce string1 je shodná s funkcí 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 definují._wcsncollmůže selhat, pokud buď string1 nebo string2 obsahuje kód širokého znaku, který je mimo doménu pořadí řazení.Dojde-li k chybě, _wcsncoll může nastavit errno na EINVAL.Chcete-li zkontrolovat chyby pro volání na _wcsncoll, nastavte errno 0 a zkontrolujte errno po volání _wcsncoll.
Poznámky
Každá z těchto funkcí provádí porovnání velká a malá písmena prvního count znaky v string1 a string2, podle stránky kód, který je právě používán.Tyto funkce lze 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 je určen pro porovnávání řetězců.Nastavit pořadí znaků je závislá na národní 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řípony pomocí národního prostředí, který je předán v.Další informace naleznete v tématu Národní prostředí.
Všechny tyto funkce ověřují své parametry.Pokud string1 nebo string2 je ukazatel s hodnotou null, nebo count je větší než INT_MAX, je vyvolána neplatný parametr obslužné rutiny, jak je popsáno v Ověření parametru.Pokud provádění může pokračovat, vrátí funkce _NLSCMPERROR a nastaví errno na EINVAL.
Rutinní mapování obecného textu
Rutina TCHAR.H |
_UNICODE & _MBCS není definováno |
_MBCS definováno |
_UNICODE definováno |
---|---|---|---|
_tcsnccoll |
_strncoll |
_mbsncoll |
_wcsncoll |
_tcsncoll |
_strncoll |
_wcsncoll |
Požadavky
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ě naleznete v tématu Kompatibilita.
Ekvivalent v rozhraní .NET Framework
Viz také
Referenční dokumentace
_mbsnbcoll, _mbsnbcoll_l, _mbsnbicoll, _mbsnbicoll_l
_stricmp, _wcsicmp, _mbsicmp, _stricmp_l, _wcsicmp_l, _mbsicmp_l
strncmp, wcsncmp, _mbsncmp, _mbsncmp_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l