NAME
wcsdup —
    save a copy of a wide string
SYNOPSIS
#include
  <wchar.h>
wchar_t *
  
  wcsdup(const
    wchar_t *str);
DESCRIPTION
Thewcsdup()
  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.