strcat, strncat - concatenate strings
#include <string.h>
char *
strcat(char *s, const char *append);
char *
strncat(char *s, const char *append, size_t count);
The strcat() and strncat() functions append a copy of the
null-terminated
string append to the end of the null-terminated string s,
then add a terminating
` '. The string s must have sufficient space to
hold the result.
The strncat() function appends not more than count characters where space
for the terminating ` ' should not be included in count.
The strcat() and strncat() functions return the pointer s.
The following appends ``abc'' to ``chararray'':
char *letters = "abcdefghi";
(void)strncat(chararray, letters, 3);
The following example shows how to use strncat() safely in
conjunction
with strncpy(3).
char buf[BUFSIZ];
char *input, *suffix;
(void)strncpy(buf, input, sizeof(buf) - 1);
buf[sizeof(buf) - 1] = ' ';
(void)strncat(buf, suffix, sizeof(buf) - 1 -
strlen(buf));
The above will copy as many characters from ``input'' to
``buf'' as will
fit. It then appends as many characters from suffix as will
fit (or none
if there is no space). For operations like this, the strlcpy(3) and
strlcat(3) functions are a better choice, as shown below.
(void)strlcpy(buf, input, sizeof(buf));
(void)strlcat(buf, suffix, sizeof(buf));
bcopy(3), memccpy(3), memcpy(3), memmove(3), strcpy(3),
strlcat(3),
strlcpy(3)
The strcat() and strncat() functions conform to ANSI
X3.159-1989 (``ANSI
C'').
OpenBSD 3.6 July 8, 1997
[ Back ] |