##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# strncat

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

Defined in header `<string.h>` |  |
char *strncat( char *dest, const char *src, size_t count ); |  | (until C99)
char *strncat( char *restrict dest, const char *restrict src, size_t count ); |  | (since C99)

Appends a byte string pointed to by `src` to a byte string pointed to by `dest`. At most `count` characters from `src` 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.

### [edit] 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

### [edit] Return value

`dest`

### [edit] Example

Run this code

    #include <string.h>
    #include <stdio.h>

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

Output:

    Hello World! Go

### [edit] See also

strcat | concatenates two strings (function) [edit]
strcpy | copies one string to another (function) [edit]
C++ documentation for strncat

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=c/string/byte/strncat&oldid=62619"