OSDN Git Service

LDP: Update original to LDP v3.79
[linuxjm/LDP_man-pages.git] / original / man3 / strdup.3
index 67a0f54..843ccd7 100644 (file)
@@ -28,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 <moz@compsoc.man.ac.uk>
-.TH STRDUP 3  2012-05-10 "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
@@ -63,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
@@ -78,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),
@@ -88,8 +89,14 @@ and can be freed with
 The
 .BR strndup ()
 function is similar, but copies at most
-\fIn\fP bytes.
-If \fIs\fP is longer than \fIn\fP, only \fIn\fP
+.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 ()
@@ -102,10 +109,13 @@ 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
+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
@@ -128,3 +138,12 @@ are GNU extensions.
 .BR realloc (3),
 .BR string (3),
 .BR wcsdup (3)
+.SH COLOPHON
+This page is part of release 3.79 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/.