man-pages/man3/wcpncpy.3

76 lines
2.1 KiB
Groff

.\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
.\"
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\"
.\" References consulted:
.\" GNU glibc-2 source code and manual
.\" Dinkumware C library reference http://www.dinkumware.com/
.\" OpenGroup's Single Unix specification http://www.UNIX-systems.org/online.html
.\"
.TH WCPNCPY 3 2010-09-15 "GNU" "Linux Programmer's Manual"
.SH NAME
wcpncpy \- copy a fixed-size string of wide characters,
returning a pointer to its end
.SH SYNOPSIS
.nf
.B #include <wchar.h>
.sp
.BI "wchar_t *wcpncpy(wchar_t *" dest ", const wchar_t *" src ", size_t " n );
.fi
.sp
.in -4n
Feature Test Macro Requirements for glibc (see
.BR feature_test_macros (7)):
.in
.sp
.BR wcpncpy ():
.PD 0
.ad l
.RS 4
.TP 4
Since glibc 2.10:
_XOPEN_SOURCE\ >=\ 700 || _POSIX_C_SOURCE\ >=\ 200809L
.TP
Before glibc 2.10:
_GNU_SOURCE
.RE
.ad
.PD
.SH DESCRIPTION
The
.BR wcpncpy ()
function is the wide-character equivalent
of the
.BR stpncpy (3)
function.
It copies at most \fIn\fP wide characters from the wide-character
string pointed to by \fIsrc\fP,
including the terminating L\(aq\\0\(aq character,
to the array pointed to by \fIdest\fP.
Exactly \fIn\fP wide characters are
written at \fIdest\fP.
If the length \fIwcslen(src)\fP is smaller than \fIn\fP,
the remaining wide characters in the array pointed to
by \fIdest\fP are filled with L\(aq\\0\(aq characters.
If the length \fIwcslen(src)\fP is greater or equal
to \fIn\fP, the string pointed to by \fIdest\fP will
not be L\(aq\\0\(aq terminated.
.PP
The strings may not overlap.
.PP
The programmer must ensure that there is room for at least \fIn\fP wide
characters at \fIdest\fP.
.SH "RETURN VALUE"
.BR wcpncpy ()
returns a pointer to the last wide character written, that is,
\fIdest + n \- 1\fP.
.SH "CONFORMING TO"
This function is a GNU extension.
.SH "SEE ALSO"
.BR stpncpy (3),
.BR wcsncpy (3),
.BR feature_test_macros (7)