Embedded Artistry libc
C Standard Library Support for Bare-metal Systems
strcat.c File Reference
#include <string.h>
Include dependency graph for strcat.c:

Go to the source code of this file.

Functions

char * strcat (char *__restrict dst, const char *__restrict src)
 Appends a copy of the null-terminated byte string pointed to by src to the end of the null-terminated byte string pointed to by dest. More...
 

Function Documentation

◆ strcat()

char* strcat ( char *__restrict  dst,
const char *__restrict  src 
)

Appends a copy of the null-terminated byte string pointed to by src to the end of the null-terminated byte string pointed to by dest.

Appends a copy of the null-terminated byte string pointed to by src to the end of the null-terminated byte string pointed to by dest. The character src[0] replaces the null terminator at the end of dest. The resulting byte string is null-terminated.

The behavior is undefined if the destination array is not large enough for the contents of both src and dest and the terminating null character. The behavior is undefined if the strings overlap. The behavior is undefined if either dest or src is not a pointer to a null-terminated byte string.

Parameters
dstpointer to the null-terminated byte string to append to
srcpointer to the null-terminated byte string to copy from
Returns
a copy of dest

Definition at line 26 of file strcat.c.

27 {
28  const size_t dstlen = strlen(dst);
29  const size_t srclen = strlen(src);
30  // The strcat() and strncat() functions append a copy of the null-
31  // terminated string src to the end of the null-terminated string dst,
32  // then add a terminating '\0'. The string dst must have sufficient
33  // space to hold the result.
34  memcpy(dst + dstlen, src, srclen + 1);
35  // The strcat() and strncat() functions return dst.
36  return dst;
37 }
size_t strlen(const char *str)
Returns the length of the given null-terminated byte string.
Definition: strlen.c:77
void * memcpy(void *__restrict dest, const void *__restrict src, size_t n)
Copies n characters from the object pointed to by src to the object pointed to by dest.

References memcpy(), and strlen().