# std::strncat

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

Defined in header `<cstring>` |  |
char *strncat( char *dest, const char *src, std::size_t count ); |  |

Appends a byte string pointed to by `src` to a byte string pointed to by `dest`. At most `count` characters are copied. The resulting byte string is null-terminated.

The destination byte string must have enough space for the contents of both `dest` and `src` plus the terminating null character, except that the size of `src` is limited to `count`.

The behavior is undefined if the strings overlap.

### Parameters

dest | - | pointer to the null-terminated byte string to append to
src | - | pointer to the null-terminated byte string to copy from
count | - | maximum number of characters to copy

### Return value

`dest`

### Example

Run this code

    #include <cstring>
    #include <cstdio>

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

Output:

    Hello World! Go

### See also

strcat | concatenates two strings (function)
strcpy | copies one string to another (function)

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/string/byte/strncat&oldid=59010"