Udostępnij za pośrednictwem


strcat, wcscat, _mbscat

Dołącza ciąg znaków.Bardziej bezpieczne wersje tych funkcji są dostępne w strcat_s, wcscat_s, _mbscat_s.

Ważna uwagaWażne

Funkcja _mbscat_s nie może być używana w aplikacjach, które wykonują się w środowisku wykonawczym systemu Windows.Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane przez /ZW.

char *strcat(
   char *strDestination,
   const char *strSource 
);
wchar_t *wcscat(
   wchar_t *strDestination,
   const wchar_t *strSource 
);
unsigned char *_mbscat(
   unsigned char *strDestination,
   const unsigned char *strSource 
);
template <size_t size>
char *strcat(
   char (&strDestination)[size],
   const char *strSource 
); // C++ only
template <size_t size>
wchar_t *wcscat(
   wchar_t (&strDestination)[size],
   const wchar_t *strSource 
); // C++ only
template <size_t size>
unsigned char *_mbscat(
   unsigned char (&strDestination)[size],
   const unsigned char *strSource 
); // C++ only

Parametry

  • strDestination
    Ciąg docelowy zakończony wartością null.

  • strSource
    Ciąg źródłowy zakończony wartością null.

Wartość zwracana

Każda z tych funkcji zwraca docelowy ciąg(strDestination).Nie zwraca żadnej wartości zarezerwowanej, aby wskazać błąd.

Uwagi

Funkcja strcat dołącza strSource do strDestination i kończy ciąg wynikowy znakiem null.Początkowy charakter strSource zastępuje kończący znak null z strDestination.Zachowanie strcat jest niezdefiniowane, jeżeli ciągi źródłowe i docelowe nakładają się.

Uwaga dotycząca zabezpieczeńUwaga dotycząca zabezpieczeń

Ponieważ strcat nie sprawdza wystarczającej ilości miejsca w strDestination przed dołączaniem strSource, może to być powodem potencjalnego przepełnienia bufora.W zamian należy rozważyć użycie strncat.

wcscat i _mbscat są wersjami znaków dwubajtowych i znaków wielobajtowych strcat.Argumenty i wartość zwracana przez wcscat są ciągami szerokich znaków; te z _mbscat są ciągami znaków wielobajtowych.Te trzy funkcje w innych wypadkach zachowują się identycznie.

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 & _MBCS nie zdefiniowano

_MBCS zdefiniowano

_UNICODE zdefiniowany

_tcscat

strcat

_mbscat

wcscat

Wymagania

Procedura

Wymagany nagłówek

strcat

<string.h>

wcscat

<ciągo.h> lub <wchar.h>

_mbscat

<mbstring.h>

Dodatkowe informacje o zgodności – zobacz: Zgodność.

Przykład

Zobacz przykład dotyczący funkcji strcpy.

Odpowiednik w programie .NET Framework

System::String::Concat

Zobacz też

Informacje

Manipulowanie ciągami (CRT)

strncat, _strncat_l, wcsncat, wcsncat_l, _mbsncat _mbsncat_l

strncmp, wcsncmp, _mbsncmp, _mbsncmp_l

strncpy, _strncpy_l, wcsncpy, _wcsncpy_l, _mbsncpy, _mbsncpy_l

_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l

strrchr, wcsrchr, _mbsrchr, _mbsrchr_l

strspn, wcsspn, _mbsspn, _mbsspn_l