_mbsnbcat
, _mbsnbcat_l
Dołącza co najwyżej n pierwszych n bajtów jednego ciągu wielobajtowego do innego. Dostępne są bezpieczniejsze wersje tych funkcji; zobacz _mbsnbcat_s
, _mbsnbcat_s_l
.
Ważne
Tego interfejsu API nie można używać w aplikacjach wykonywanych w środowisko wykonawcze systemu Windows. Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane w aplikacjach platforma uniwersalna systemu Windows.
Składnia
unsigned char *_mbsnbcat(
unsigned char *dest,
const unsigned char *src,
size_t count
);
unsigned char *_mbsnbcat_l(
unsigned char *dest,
const unsigned char *src,
size_t count,
_locale_t locale
);
template <size_t size>
unsigned char *_mbsnbcat(
unsigned char (&dest)[size],
const unsigned char *src,
size_t count
); // C++ only
template <size_t size>
unsigned char *_mbsnbcat_l(
unsigned char (&dest)[size],
const unsigned char *src,
size_t count,
_locale_t locale
); // C++ only
Parametry
dest
Ciąg docelowy o znakach wielobajtowych zakończonych wartościami null.
src
Ciąg źródłowy z wieloma znakami o wartości null.
count
Liczba bajtów z src
do dołączenia do dest
.
locale
Ustawienia regionalne do użycia.
Wartość zwracana
_mbsnbcat
Zwraca wskaźnik do ciągu docelowego. Żadna wartość zwracana nie jest zarezerwowana, aby wskazać błąd.
Uwagi
Funkcja _mbsnbcat
dołącza co najwyżej pierwsze count
bajty src
do dest
elementu . Jeśli bajt bezpośrednio poprzedzający znak null w dest
obiekcie jest bajtem ołowiu, początkowy bajt zastępowania tego bajtu ołowiu src
. W przeciwnym razie początkowy bajt src
zastępowania przerywającego znaku null elementu dest
. Jeśli bajt o wartości null pojawia się przed src
count
dołączeniem bajtów, _mbsnbcat
dołącza wszystkie bajty z src
, aż do znaku null. Jeśli count
jest większa niż długość src
, długość src
elementu jest używana zamiast count
. Wynikowy ciąg jest zakończony znakiem null. Jeśli kopiowanie odbywa się między ciągami nakładającymi się, zachowanie jest niezdefiniowane.
Na wartość wyjściową ma wpływ ustawienie LC_CTYPE
ustawienia kategorii ustawień regionalnych. Aby uzyskać więcej informacji, zobacz setlocale
. Wersja _mbsnbcat
funkcji używa bieżących ustawień regionalnych dla tego zachowania zależnego od ustawień regionalnych; _mbsnbcat_l
wersja jest identyczna, z tą różnicą, że używają parametru ustawień regionalnych przekazanych zamiast. Aby uzyskać więcej informacji, zobacz Ustawienia regionalne.
Uwaga zabezpieczeń Użyj ciągu zakończonego wartością null. Ciąg zakończony wartością null nie może przekraczać rozmiaru buforu docelowego. Aby uzyskać więcej informacji, zobacz Unikanie przekroków buforu.
Jeśli dest
parametr lub src
ma NULL
wartość , funkcja wygeneruje nieprawidłowy błąd parametru, zgodnie z opisem w temacie Weryfikacja parametru. Jeśli błąd jest obsługiwany, funkcja zwraca EINVAL
wartość i ustawia wartość errno
EINVAL
.
W języku C++te funkcje mają przeciążenia szablonu, które wywołują nowsze, bezpieczne odpowiedniki tych funkcji. Aby uzyskać więcej informacji, zobacz Bezpieczne przeciążenia szablonów.
Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.
Mapowania procedur tekstu ogólnego
Procedura tchar.h | _UNICODE i _MBCS niezdefiniowane |
_MBCS zdefiniowany |
_UNICODE zdefiniowany |
---|---|---|---|
_tcsncat |
strncat |
_mbsnbcat |
wcsncat |
_tcsncat_l |
_strncat_l |
_mbsnbcat_l |
_wcsncat_l |
Wymagania
Procedura | Wymagany nagłówek |
---|---|
_mbsnbcat |
<mbstring.h> |
_mbsnbcat_l |
<mbstring.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Zobacz też
Manipulowanie ciągami
_mbsnbcmp
, _mbsnbcmp_l
_strncnt
, , _wcsncnt
, _mbsnbcnt
, _mbsnbcnt_l
, , _mbsnccnt
_mbsnccnt_l
_mbsnbcpy
, _mbsnbcpy_l
_mbsnbicmp
, _mbsnbicmp_l
_mbsnbset
, _mbsnbset_l
strncat
, , _strncat_l
, wcsncat
, _wcsncat_l
, , _mbsncat
_mbsncat_l
_mbsnbcat_s
, _mbsnbcat_s_l