table of contents
other versions
- wheezy 3.44-1
- jessie 3.74-1
- jessie-backports 4.10-2~bpo8+1
- testing 4.10-2
- unstable 4.10-2
other sections
STRCAT(3) | Linux Programmer's Manual | STRCAT(3) |
NAME¶
strcat, strncat - concatenate two stringsSYNOPSIS¶
#include <string.h>char *strcat(char *dest, const char *src);char *strncat(char *dest, const char *src, size_t n);
DESCRIPTION¶
The strcat() function appends the src string to the dest string, overwriting the terminating 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. If dest is not large enough, program behavior is unpredictable; buffer overruns are a favorite avenue for attacking secure programs. The strncat() function is similar, except that- *
- it will use at most n bytes from src; and
- *
- src does not need to be null-terminated if it contains n or more bytes.
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; }
RETURN VALUE¶
The strcat() and strncat() functions return a pointer to the resulting string dest.CONFORMING TO¶
SVr4, 4.3BSD, C89, C99.NOTES¶
Some systems (the BSDs, Solaris, and others) provide the following function:size_t strlcat(char *dest, const char *src, size_t size);
SEE ALSO¶
bcopy(3), memccpy(3), memcpy(3), strcpy(3), string(3), strncpy(3), wcscat(3), wcsncat(3)COLOPHON¶
This page is part of release 3.44 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/.2012-07-19 | GNU |