X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=original%2Fman3%2Fstrdup.3;h=383246bf546b41749b78ac39d79bcf0745385431;hb=110dba020f489b75aff2497105f7970c05e2b87c;hp=b74f201799eab6ca8d367e5f7f1b3a3cbc2c57c8;hpb=4b904a2f7904198bf8397efd8c787e1e512992a5;p=linuxjm%2FLDP_man-pages.git diff --git a/original/man3/strdup.3 b/original/man3/strdup.3 index b74f2017..383246bf 100644 --- a/original/man3/strdup.3 +++ b/original/man3/strdup.3 @@ -1,5 +1,6 @@ .\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk) .\" +.\" %%%LICENSE_START(VERBATIM) .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. @@ -19,6 +20,7 @@ .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. +.\" %%%LICENSE_END .\" .\" References consulted: .\" Linux libc source code @@ -26,7 +28,7 @@ .\" 386BSD man pages .\" Modified Sun Jul 25 10:41:34 1993 by Rik Faith (faith@cs.unc.edu) .\" Modified Wed Oct 17 01:12:26 2001 by John Levon -.TH STRDUP 3 2011-10-01 "GNU" "Linux Programmer's Manual" +.TH STRDUP 3 2013-04-19 "GNU" "Linux Programmer's Manual" .SH NAME strdup, strndup, strdupa, strndupa \- duplicate a string .SH SYNOPSIS @@ -61,7 +63,7 @@ _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED .RS 4 .TP 4 Since glibc 2.10: -POSIX_C_SOURCE\ >=\ 200809L || _XOPEN_SOURCE\ >=\ 700 +_POSIX_C_SOURCE\ >=\ 200809L || _XOPEN_SOURCE\ >=\ 700 .TP Before glibc 2.10: _GNU_SOURCE @@ -76,7 +78,8 @@ _GNU_SOURCE The .BR strdup () function returns a pointer to a new string which -is a duplicate of the string \fIs\fP. +is a duplicate of the string +.IR s . Memory for the new string is obtained with .BR malloc (3), @@ -85,10 +88,16 @@ and can be freed with The .BR strndup () -function is similar, but only copies at most -\fIn\fP characters. -If \fIs\fP is longer than \fIn\fP, only \fIn\fP -characters are copied, and a terminating null byte (\(aq\\0\(aq) is added. +function is similar, but copies at most +.I n +bytes. +If +.I s +is longer than +.IR n , +only +.I n +bytes are copied, and a terminating null byte (\(aq\\0\(aq) is added. .BR strdupa () and @@ -96,19 +105,22 @@ and are similar, but use .BR alloca (3) to allocate the buffer. -They are only available when using the GNU +They are available only when using the GNU GCC suite, and suffer from the same limitations described in .BR alloca (3). -.SH "RETURN VALUE" -The +.SH RETURN VALUE +On success, the .BR strdup () function returns a pointer to the duplicated -string, or NULL if insufficient memory was available. +string. +It returns NULL if insufficient memory was available, with +.I errno +set to indicate the cause of the error. .SH ERRORS .TP .B ENOMEM Insufficient memory available to allocate duplicate string. -.SH "CONFORMING TO" +.SH CONFORMING TO .\" 4.3BSD-Reno, not (first) 4.3BSD. .BR strdup () conforms to SVr4, 4.3BSD, POSIX.1-2001. @@ -118,7 +130,7 @@ conforms to POSIX.1-2008. and .BR strndupa () are GNU extensions. -.SH "SEE ALSO" +.SH SEE ALSO .BR alloca (3), .BR calloc (3), .BR free (3), @@ -126,3 +138,12 @@ are GNU extensions. .BR realloc (3), .BR string (3), .BR wcsdup (3) +.SH COLOPHON +This page is part of release 3.68 of the Linux +.I man-pages +project. +A description of the project, +information about reporting bugs, +and the latest version of this page, +can be found at +\%http://www.kernel.org/doc/man\-pages/.