The Open Group Base Specifications Issue 7, 2018 edition
IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008)
Copyright © 2001-2018 IEEE and The Open Group

NAME

wcpncpy, wcsncpy - copy a fixed-size wide-character string, returning a pointer to its end

SYNOPSIS

#include <wchar.h>

[CX] [Option Start] wchar_t *wcpncpy(wchar_t restrict *ws1, const wchar_t *restrict ws2,
       size_t
n); [Option End]

wchar_t *wcsncpy(wchar_t *restrict
ws1, const wchar_t *restrict ws2,
       size_t
n);

DESCRIPTION

For wcsncpy(): [CX] [Option Start]  The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of POSIX.1-2017 defers to the ISO C standard. [Option End]

The [CX] [Option Start] wcpncpy() [Option End] and wcsncpy() functions shall copy not more than n wide-character codes (wide-character codes that follow a null wide-character code are not copied) from the array pointed to by ws2 to the array pointed to by ws1. If copying takes place between objects that overlap, the behavior is undefined.

If the array pointed to by ws2 is a wide-character string that is shorter than n wide-character codes, null wide-character codes shall be appended to the copy in the array pointed to by ws1, until n wide-character codes in all are written.

RETURN VALUE

[CX] [Option Start] If any null wide-character codes were written into the destination, the wcpncpy() function shall return the address of the first such null wide-character code. Otherwise, it shall return &ws1[n]. [Option End]

The wcsncpy() function shall return ws1.

No return values are reserved to indicate an error.

ERRORS

No errors are defined.


The following sections are informative.

EXAMPLES

None.

APPLICATION USAGE

If there is no null wide-character code in the first n wide-character codes of the array pointed to by ws2, the result is not null-terminated.

RATIONALE

None.

FUTURE DIRECTIONS

None.

SEE ALSO

strncpy, wcscpy

XBD <wchar.h>

CHANGE HISTORY

First released in Issue 4. Derived from the MSE working draft.

Issue 6

The wcsncpy() prototype is updated for alignment with the ISO/IEC 9899:1999 standard.

Issue 7

The wcpncpy() function is added from The Open Group Technical Standard, 2006, Extended API Set Part 1.

End of informative text.

 

return to top of page

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
Copyright © 2001-2018 IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]