MirOS Manual: strcat(3), strncat(3)

STRCAT(3)                  BSD Programmer's Manual                   STRCAT(3)

NAME

     strcat, strncat - concatenate strings

SYNOPSIS

     #include <string.h>

     char *
     strcat(char *s, const char *append);

     char *
     strncat(char *s, const char *append, size_t count);

DESCRIPTION

     The strcat() and strncat() functions append a copy of the NUL-terminated
     string append to the end of the NUL-terminated string s, then add a ter-
     minating '\0'. 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 '\0' should not be included in count.

RETURN VALUES

     The strcat() and strncat() functions return the pointer s.

EXAMPLES

     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] = '\0';
           (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));

SEE ALSO

     bcopy(3), memccpy(3), memcpy(3), memmove(3), strcpy(3), strlcat(3),
     strlcpy(3)

STANDARDS

     The strcat() and strncat() functions conform to ANSI X3.159-1989 ("ANSI
     C").

MirOS BSD #10-current            July 8, 1997                                1

Generated on 2014-04-02 20:57:59 by $MirOS: src/scripts/roff2htm,v 1.79 2014/02/10 00:36:11 tg Exp $

These manual pages and other documentation are copyrighted by their respective writers; their source is available at our CVSweb, AnonCVS, and other mirrors. The rest is Copyright © 2002‒2014 The MirOS Project, Germany.
This product includes material provided by Thorsten Glaser.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report – diffs preferred.