3 <<wcpncpy>>---copy part of a wide-character string returning a pointer to its end
7 wchar_t *wcpncpy(wchar_t *__restrict <[s1]>,
8 const wchar_t *__restrict <[s2]>, size_t <[n]>);
11 The <<wcpncpy>> function copies not more than n wide-character codes
12 (wide-character codes that follow a null wide-character code are not
13 copied) from the array pointed to by <[s2]> to the array pointed to
14 by <[s1]>. If copying takes place between objects that overlap, the
15 behaviour is undefined.
17 If the array pointed to by <[s2]> is a wide-character string that is
18 shorter than <[n]> wide-character codes, null wide-character codes are
19 appended to the copy in the array pointed to by <[s1]>, until <[n]>
20 wide-character codes in all are written.
23 The <<wcpncpy>> function returns <[s1]>; no return value is reserved to
27 <<wcpncpy>> is ISO/IEC 9899/AMD1:1995 (ISO C).
29 No supporting OS subroutines are required.
36 wcpncpy (wchar_t *__restrict dst
,
37 const wchar_t *__restrict src
,
45 if ((*dst
++ = *src
++) == L
'\0')
54 return ret
? ret
: dst
;