.\" -*- coding: UTF-8 -*-
'\" t
.\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk)
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.\" References consulted:
.\"     Linux libc source code
.\"     Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991)
.\"     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>
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH strdup 3 "15 czerwca 2024 r." "Linux man\-pages 6.9.1" 
.SH NAZWA
strdup, strndup, strdupa, strndupa \- powiela łańcuch
.SH BIBLIOTEKA
Standardowa biblioteka C (\fIlibc\fP, \fI\-lc\fP)
.SH SKŁADNIA
.nf
\fB#include <string.h>\fP
.P
\fBchar *strdup(const char *\fP\fIs\fP\fB);\fP
.P
\fBchar *strndup(const char \fP\fIs\fP\fB[.\fP\fIn\fP\fB], size_t \fP\fIn\fP\fB);\fP
\fBchar *strdupa(const char *\fP\fIs\fP\fB);\fP
\fBchar *strndupa(const char \fP\fIs\fP\fB[.\fP\fIn\fP\fB], size_t \fP\fIn\fP\fB);\fP
.fi
.P
.RS -4
Wymagane ustawienia makr biblioteki glibc (patrz \fBfeature_test_macros\fP(7)):
.RE
.P
\fBstrdup\fP():
.nf
.\"    || _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED
    _XOPEN_SOURCE >= 500
        || /* Od glibc 2.12: */ _POSIX_C_SOURCE >= 200809L
        || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
.fi
.P
\fBstrndup\fP():
.nf
    Od glibc 2.10:
        _POSIX_C_SOURCE >= 200809L
    Przed glibc 2.10:
        _GNU_SOURCE
.fi
.P
\fBstrdupa\fP(), \fBstrndupa\fP():
.nf
    _GNU_SOURCE
.fi
.SH OPIS
Funkcja \fBstrdup\fP() zwraca wskaźnik do nowego łańcucha, który stanowi kopię
łańcucha \fIs\fP. Pamięć dla nowego łańcucha jest przydzielana za pomocą
\fBmalloc\fP(3) i może być zwolniona za pomocą \fBfree\fP(3).
.P
Funkcja \fBstrndup\fP() jest podobna, lecz kopiuje co najwyżej \fIn\fP
znaków. Jeśli \fIs\fP jest dłuższe niż \fIn\fP, kopiowane jest tylko \fIn\fP znaków i
dodawany jest kończący znak null (\[aq]\[rs]0\[aq]).
.P
\fBstrdupa\fP() i \fBstrndupa\fP() są podobne, ale korzystają z \fBalloca\fP(3) do
przydzielania pamięci na bufor.
.SH "WARTOŚĆ ZWRACANA"
Funkcja \fBstrdup\fP() zwraca wskaźnik do skopiowanego łańcucha. Zwraca NULL,
gdy nie jest dostępna dostateczna ilość pamięci, i ustawia \fIerrno\fP,
wskazując błąd.
.SH BŁĘDY
.TP 
\fBENOMEM\fP
Nie można przydzielić dostatecznej ilości pamięci potrzebnej dla kopii
łańcucha.
.SH ATRYBUTY
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku
\fBattributes\fP(7).
.TS
allbox;
lbx lb lb
l l l.
Interfejs	Atrybut	Wartość
T{
.na
.nh
\fBstrdup\fP(),
\fBstrndup\fP(),
\fBstrdupa\fP(),
\fBstrndupa\fP()
T}	Bezpieczeństwo wątkowe	MT\-bezpieczne
.TE
.SH STANDARDY
.TP 
\fBstrdup\fP()
.TQ
\fBstrndup\fP()
POSIX.1\-2008.
.TP 
\fBstrdupa\fP()
.TQ
\fBstrndupa\fP()
GNU.
.SH HISTORIA
.TP 
\fBstrdup\fP()
SVr4, 4.3BSD\-Reno, POSIX.1\-2001.
.TP 
\fBstrndup\fP()
POSIX.1\-2008.
.TP 
\fBstrdupa\fP()
.TQ
\fBstrndupa\fP()
GNU.
.SH "ZOBACZ TAKŻE"
\fBalloca\fP(3), \fBcalloc\fP(3), \fBfree\fP(3), \fBmalloc\fP(3), \fBrealloc\fP(3),
\fBstring\fP(3), \fBwcsdup\fP(3)
.PP
.SH TŁUMACZENIE
Tłumaczenie niniejszej strony podręcznika:
Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>,
Robert Luberda <robert@debian.org>
i
Michał Kułach <michal.kulach@gmail.com>
.
.PP
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach
licencji można uzyskać zapoznając się z
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License w wersji 3
.UE
lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
.PP
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy
dyskusyjnej
.MT manpages-pl-list@lists.sourceforge.net
.ME .
