NAME
strdup
, strndup
— save a copy of a
string
LIBRARY
library “libc”
SYNOPSIS
#include
<string.h>
char *
strdup
(const
char *str);
char *
strndup
(const
char *str, size_t
len);
DESCRIPTION
Thestrdup
()
function allocates sufficient memory for a copy of the string
str, does the copy, and returns a pointer to it. The
memory is allocated with
malloc(3) and should be released with
free(3) when no longer needed.
The
strndup
()
function copies at most len characters from the string
str always NUL
terminating the
copied string.
RETURN VALUES
If insufficient memory is available, NULL is returned and
errno is set to ENOMEM
.
Otherwise, the strdup
() family of functions return a
pointer to the copied string.
SEE ALSO
STANDARDS
The strdup
() function is specified by
IEEE Std 1003.1-2001 (“POSIX.1”). The
strndup
() function is specified by
IEEE Std 1003.1-2008 (“POSIX.1”).
HISTORY
The strdup
() function first appeared in
4.3BSD-Reno. The strndup
()
function was added in FreeBSD 7.2.