Udostępnij za pośrednictwem


_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 destelementu . 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 NULLwartość , 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