GNU/Linux |
Debian 6.0.0(Squeeze) |
|
![]() |
strncat(3) |
![]() |
strcat, strncat − concatenate two strings
#include <string.h>
char *strcat(char *dest, const char *src);
char *strncat(char *dest, const char *src, size_t n);
The strcat() function appends the src string to the dest string, overwriting the null byte ('\0') at the end of dest, and then adds a terminating null byte. The strings may not overlap, and the dest string must have enough space for the result.
The strncat() function is similar, except that
* |
it will use at most n characters from src; and | ||
* |
src does not need to be null-terminated if it contains n or more characters. |
As with strcat(), the resulting string in dest is always null-terminated.
If src contains n or more characters, strncat() writes n+1 characters to dest (n from src plus the terminating null byte). Therefore, the size of dest must be at least strlen(dest)+n+1.
A simple implementation of strncat() might be:
char*
strncat(char *dest, const char *src, size_t n)
{
size_t dest_len = strlen(dest);
size_t i;
for (i = 0 ; i
< n && src[i] != '\0' ; i++)
dest[dest_len + i] = src[i];
dest[dest_len + i] = '\0';
return dest;
}
The strcat() and strncat() functions return a pointer to the resulting string dest.
SVr4, 4.3BSD, C89, C99.
bcopy(3), memccpy(3), memcpy(3), strcpy(3), string(3), strncpy(3), wcscat(3), wcsncat(3)
This page is part of release 3.27 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.
![]() |
strncat(3) | ![]() |