]> pd.if.org Git - pdclib.old/blobdiff - man3/strdup.3
Manual pages: renmae man->man3 to follow existing conventions. Add files _Exit.3...
[pdclib.old] / man3 / strdup.3
diff --git a/man3/strdup.3 b/man3/strdup.3
new file mode 100644 (file)
index 0000000..8ac67e0
--- /dev/null
@@ -0,0 +1,59 @@
+.\" This file is part of the Public Domain C Library (PDCLib).\r
+.\" Permission is granted to use, modify, and / or redistribute at will.\r
+.\"\r
+.Dd\r
+.Dt strdup 3\r
+.Os\r
+\r
+.Sh NAME\r
+.Nm strdup\r
+.Nd string duplication\r
+\r
+.Sh SYNOPSIS\r
+.Sy #define _XOPEN_SOURCE || _POSIX_C_SOURCE >= 200809L\r
+.In string.h\r
+.Fn "char *strdup" "const char *str"\r
+.Pp\r
+.Sy #define _POSIX_C_SOURCE >= 200809L\r
+.In string.h\r
+.Fn "char *strndup" "const char *str" "size_t len"\r
+\r
+.Sh DESCRIPTION\r
+.Fn strdup\r
+allocates a new buffer of sufficient size as to be able to hold the entirety of\r
+.Va str ,\r
+including the terminating character, and copies the contents of\r
+.Va str\r
+into it.\r
+\r
+.Pp\r
+.Fn strndup\r
+allocates a buffer large enough to contain\r
+.Va len\r
+characters, plus a trailing null character, or sufficient to contain the \r
+entirety of\r
+.Va str\r
+including the trailing null character, whichever is smaller. The first \r
+.Va len\r
+characters of \r
+.Va str\r
+are then copied into it, and a null character appended.\r
+\r
+.Pp\r
+The buffers returned by these functions must be released by a call to\r
+.Fn free .\r
+\r
+.Sh SEE ALSO\r
+.Xr free 3\r
+.Xr malloc 3\r
+.Xr strcpy 3\r
+.Xr strncpy 3\r
+\r
+.Sh STANDARDS\r
+.Fn strdup\r
+first specified in \r
+.St -xpg3 .\r
+Moved into POSIX, and\r
+.Fn strndup\r
+added, with\r
+.St -p1003.1-2008 .
\ No newline at end of file