Udostępnij za pośrednictwem


_mbsnbcat, _mbsnbcat_l

Dołącza co najwyżej pierwszy bajt n ciągu znaków wielobajtowych do innego ciągu.Bardziej bezpieczne wersje tych funkcji są dostępne w _mbsnbcat_s, _mbsnbcat_s_l.

Ważna uwagaWażne

Tego API nie można używać w aplikacjach korzystających ze środowiska wykonawczego Windows.Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane przez /ZW.

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
    Docelowy ciąg znaków wielobajtowych przerwany wartością null.

  • src
    Źródłowy ciąg znaków wielobajtowych przerwany 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.Nie zwraca żadnej wartości zarezerwowanej, aby wskazać błąd.

Uwagi

_mbsnbcat funkcja dołącza co najwyżej, pierwsze count bajty src do dest.Jeśli bajt bezpośrednio poprzedzający znak null w dest jest bajtem wiodącym, bajt początkowy src powoduje zastąpienie tego bajtu.W przeciwnym razie bajt początkowy src zastępuje kończący znak null z dest.Jeśli bajt typu null znajduje się w src zanim bajty count są dołączane, _mbsnbcat dołącza wszystkie bajty z src, do znaku null.Jeśli count jest większa niż długość src, długość src jest używana zamiast count.Wynikowy ciąg znaków jest zakończony znakiem null.Jeśli kopiowanie odbywa się między nakładającymi się ciągami, zachowanie jest niezdefiniowane.

Wartość wyjściowa jest zależna od konfiguracji ustawień kategorii LC_CTYPE ustawień regionalnych; zobacz setlocale, aby uzyskać więcej informacji._mbsnbcat wersja tej funkcji używa bieżących ustawień regionalnych dla wszelkich zachowań; _mbsnbcat_l wersja jest identyczna, z tą różnicą, że w zamian korzysta z przekazanego parametru ustawień regionalnych.Aby uzyskać więcej informacji, zobacz Regionalne.

Uwaga dotycząca zabezpieczeń Użyj ciągu zakończonego znakiem null.Ciąg zakończony znakiem null nie może przekraczać rozmiaru bufora docelowego.Aby uzyskać więcej informacji, zobacz unikanie przekroczenia buforu.

Jeśli dest lub src wynosi NULL, funkcja utworzy błąd nieprawidłowego parametru, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli obsługiwany jest błąd, funkcja zwraca EINVAL i ustawia errno jako EINVAL.

W języku programowania C++ funkcje te mają przeciążenia szablonu, które wywołują nowsze, bezpieczne odpowiedniki tych funkcji.Aby uzyskać więcej informacji, zobacz Przeciążenia bezpiecznych szablonów.

Rutynowe mapowania zwykłego tekstu

Procedura Tchar.h

_UNICODE i _MBCS nie zdefiniowany

_MBCS zdefiniowano

_UNICODE zdefiniowany

_tcsncat

strncat

_mbsnbcat

wcsncat

_tcsncat_l

_strncat_l

_mbsnbcat_l

_wcsncat_l

Wymagania

Procedura

Wymagany nagłówek

_mbsnbcat

<mbCiąg.h>

_mbsnbcat_l

<mbCiąg.h>

Aby uzyskać więcej informacji na temat zgodności – zobacz: Zgodność.

Odpowiednik w programie .NET Framework

Nie dotyczy. Aby wywołać standardową funkcję C, należy użyć PInvoke. Aby uzyskać więcej informacji, zobacz Przykłady wywoływania platformy.

Zobacz też

Informacje

Manipulowanie ciągami (CRT)

_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