NAME
wcsdup
—
save a copy of a wide string
SYNOPSIS
#include
<wchar.h>
wchar_t *
wcsdup
(const
wchar_t *str);
DESCRIPTION
The
wcsdup
()
function allocates sufficient memory for a copy of the wide-character string
str, does the copy, and returns a pointer to it. The
pointer may subsequently be used as an argument to the function
free(3).
If insufficient memory is available, NULL
is returned.
EXAMPLES
The following will point p to an allocated area of memory containing the nul-terminated string "foobar":
const char *o = "foobar"; wchar_t *p, b[32]; size_t blen; blen = sizeof(b) / sizeof(b[0]); if (mbstowcs(b, o, blen) == (size_t)-1) err(1, NULL); b[blen - 1] = 0; if ((p = wcsdup(b)) == NULL) err(1, NULL);
ERRORS
The wcsdup
() function may fail and set the
external variable errno for any of the errors
specified for the library function
malloc(3).
SEE ALSO
STANDARDS
The wcsdup
() function conforms to
IEEE Std 1003.1-2008 (“POSIX.1”).
HISTORY
The wcsdup
() function was ported from
NetBSD and first appeared in
OpenBSD 5.0.