function is the wide-character equivalent
It allocates and returns a new wide-character string whose initial
contents is a duplicate of the wide-character string pointed to by s.
Memory for the new wide-character string is
and should be freed with
function returns a pointer
to the new wide-character string,
or NULL if sufficient memory was not available.
Insufficient memory available to allocate duplicate string.
This function is not specified in POSIX.1-2001,
and is not widely available on other systems.