##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# std::strcat

From cppreference.com
< cpp‎ | string‎ | byte

Defined in header `<cstring>` |  |
char *strcat( char *dest, const char *src ); |  |

Appends a copy of the character string pointed to by `src` to the end of the character 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.

### [edit] Parameters

dest | - | pointer to the null-terminated byte string to append to
src | - | pointer to the null-terminated byte string to copy from

### [edit] Return value

`dest`

### [edit] Example

Run this code

    #include <cstring>
    #include <cstdio>

    int main()
    {
        char str[50] = "Hello ";
        char str2[50] = "World!";
        std::strcat(str, str2);
        std::strcat(str, " Goodbye World!");
        std::puts(str);
    }

Output:

    Hello World! Goodbye World!

### [edit] See also

strncat | concatenates a certain amount of characters of two strings (function) [edit]
strcpy | copies one string to another (function) [edit]
C documentation for strcat

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/string/byte/strcat&oldid=79460"