_mbsnbcat_s _mbsnbcat_s_l
Připojí řetězec vícebajtových znaků, první n bajtů jiného vícebajtové znakové řetězce.Jedná se o verze _mbsnbcat _mbsnbcat_l , mají vylepšení zabezpečení, jak je popsáno v Funkce zabezpečení v CRT.
Důležité |
---|
Toto rozhraní API 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. |
errno_t _mbsnbcat_s(
unsigned char *dest,
size_t sizeInBytes,
const unsigned char *src,
size_t count
);
errno_t _mbsnbcat_s_l(
unsigned char *dest,
size_t sizeInBytes,
const unsigned char *src,
size_t count,
_locale_t locale
);
template <size_t size>
errno_t _mbsnbcat_s(
unsigned char (&dest)[size],
const unsigned char *src,
size_t count
); // C++ only
template <size_t size>
errno_t _mbsnbcat_s_l(
unsigned char (&dest)[size],
const unsigned char *src,
size_t count,
_locale_t locale
); // C++ only
Parametry
dest
Řetězec zakončený hodnotou Null cílové vícebajtové znaky.sizeInBytes
Velikost dest vyrovnávací paměti v bajtech.src
Zdroj zakončený vícebajtové znakové řetězce.Count
Počet bajtů od src připojit k dest.locale
Chcete-li národní prostředí pro použití.
Vrácená hodnota
Nula v případě úspěchu; v opačném případě se kód chyby.
Chybové stavy
Dest |
sizeInBytes |
src |
Vrácená hodnota |
---|---|---|---|
NULL |
všechny |
všechny |
EINVAL |
Všechny |
< = 0 |
všechny |
EINVAL |
Všechny |
všechny |
NULL |
EINVAL |
Dojde-li k některé z chybových stavů, funkce generuje chybu neplatného parametru, jak je popsáno v Ověření parametrů.Pokud chyba zpracována, vrátí funkce EINVAL a errno na EINVAL.
Poznámky
_mbsnbcat_s Funkce připojí na dest, nanejvýš první count bajtů src.Pokud je bajt bezprostředně předchází znak null v dest je vedoucí bajt je přepsán úvodní bajt src.V opačném případě se úvodní bajt src přepíše ukončující znak null z dest.Je-li nulový bajt se objeví v src před count bajty jsou připojeny, _mbsnbcat_s připojí všechny bajty z src, až znakem null.Pokud count je větší než délka src, délka src je použito místo count.Výsledný řetězec je ukončen znakem null.Pokud kopírování probíhá mezi řetězce, které se překrývají, chování není definován.
Výstupní hodnota je ovlivněna nastavením LC_CTYPE kategorie nastavení národního prostředí; Viz setlocale _wsetlocale Další informace.Verze tyto funkce jsou stejné, s tím rozdílem, že ty, které nechcete mít _l příponu použít aktuální národní prostředí a ty, které mají _l přípony, použijte parametr locale, který je předaný v.Další informace naleznete v tématu Národní prostředí.
V jazyce C++ použití těchto funkcí je zjednodušeno díky přetížení šablony; přetížení můžete odvodit vyrovnávací paměti automaticky a tím se vyhnete nutnosti zadat argument velikost a mohou automaticky pomocí funkce jejich novější, bezpečnější nahradit starší, méně zabezpečené funkce.Další informace naleznete v tématu Přetížení šablony zabezpečení.
Ladicí verze těchto funkcí vyplnit nejprve vyrovnávací paměť s 0xFD.Chcete-li zakázat toto chování, použijte _CrtSetDebugFillThreshold.
Mapování rutiny obecného textu
Byla zahájena rutina Tchar.h |
_UNICODE a _MBCS není definováno |
_MBCS, definice |
_UNICODE definována |
---|---|---|---|
_tcsncat |
_mbsnbcat_s |
||
_tcsncat_s_l |
_strncat_s_l |
_mbsnbcat_s_l |
_wcsncat_s_l |
Požadavky
Byla zahájena rutina |
Požadované záhlaví |
---|---|
_mbsnbcat_s |
<mbstring.h> |
_mbsnbcat_s_l |
<mbstring.h> |
Další informace o kompatibilitě v tématu Kompatibilita.
Ekvivalent v rozhraní .NET Framework
Nelze použít Volání funkce standardním C pomocí PInvoke. Další informace naleznete v tématu Příklady volání funkce platformy.
Viz také
Referenční dokumentace
_strncnt, _wcsncnt, _mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, _mbsnccnt_l
strncat, _strncat_l, wcsncat, wcsncat_l, _mbsncat _mbsncat_l
strncat_s, _strncat_s_l, wcsncat_s, _wcsncat_s_l, _mbsncat_s, _mbsncat_s_l