man-pages/man3/stpncpy.3

53 lines
1.6 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
.\"
.\" Corrected, aeb, 990824
.TH STPNCPY 3 1999-07-25 "GNU" "Linux Programmer's Manual"
.SH NAME
stpncpy \- copy a fixed-size string, returning a pointer to its end
.SH SYNOPSIS
.nf
.B #define _GNU_SOURCE
.br
.B #include <string.h>
.sp
.BI "char *stpncpy(char *" dest ", const char *" src ", size_t " n );
.fi
.SH DESCRIPTION
The
.BR stpncpy ()
function copies at most \fIn\fP characters from the string
pointed to by \fIsrc\fP, including the terminating \(aq\\0\(aq character,
to the array pointed to by \fIdest\fP.
Exactly \fIn\fP characters are written at
\fIdest\fP.
If the length \fIstrlen(src)\fP is smaller than \fIn\fP, the
remaining characters in the array pointed to by \fIdest\fP are filled
with \(aq\\0\(aq characters.
If the length \fIstrlen(src)\fP is greater or equal to
\fIn\fP, the string pointed to by \fIdest\fP will
not be \(aq\\0\(aq terminated.
.PP
The strings may not overlap.
.PP
The programmer must ensure that there is room for at least \fIn\fP characters
at \fIdest\fP.
.SH "RETURN VALUE"
.BR stpncpy ()
returns a pointer to the terminating null
in \fIdest\fP, or, if \fIdest\fP is not null-terminated,
\fIdest + n\fP.
.SH "CONFORMING TO"
This function is a GNU extension.
.SH "SEE ALSO"
.BR strncpy (3),
.BR wcpncpy (3),
.BR feature_test_macros (7)