noble (3) strdup.3.gz

Provided by: manpages-pl-dev_4.21.0-2_all bug

NAZWA

       strdup, strndup, strdupa, strndupa - powielenie łańcucha

BIBLIOTEKA

       Standardowa biblioteka C (libc, -lc)

SKŁADNIA

       #include <string.h>

       char *strdup(const char *s);

       char *strndup(const char s[.n], size_t n);
       char *strdupa(const char *s);
       char *strndupa(const char s[.n], size_t n);

   Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

       strdup():
           _XOPEN_SOURCE >= 500
               || /* Od glibc 2.12: */ _POSIX_C_SOURCE >= 200809L
               || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

       strndup():
           Od glibc 2.10:
               _POSIX_C_SOURCE >= 200809L
           Przed glibc 2.10:
               _GNU_SOURCE

       strdupa(), strndupa():
           _GNU_SOURCE

OPIS

       Funkcja  strdup()  zwraca  wskaźnik do nowego łańcucha, który stanowi kopię łańcucha s. Pamięć dla nowego
       łańcucha jest przydzielana za pomocą malloc(3) i może być zwolniona za pomocą free(3).

       Funkcja strndup() jest podobna, lecz kopiuje co najwyżej n znaków. Jeśli s jest dłuższe niż n,  kopiowane
       jest tylko n znaków i dodawany jest kończący znak null ('\0').

       strdupa() i strndupa() są podobne, ale korzystają z alloca(3) do przydzielania pamięci na bufor.

WARTOŚĆ ZWRACANA

       On  success,  the  strdup()   function  returns  a  pointer to the duplicated string.  It returns NULL if
       insufficient memory was available, with errno set to indicate the error.

BŁĘDY

       ENOMEM Nie można przydzielić dostatecznej ilości pamięci potrzebnej dla kopii łańcucha.

ATRYBUTY

       Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).

       ┌─────────────────────────────────────────────────────────────────────┬────────────────────────┬─────────┐
       │InterfejsAtrybutWartość │
       ├─────────────────────────────────────────────────────────────────────┼────────────────────────┼─────────┤
       │strdup(), strndup(), strdupa(), strndupa()                           │ Bezpieczeństwo wątkowe │ MT-Safe │
       └─────────────────────────────────────────────────────────────────────┴────────────────────────┴─────────┘

STANDARDY

       strdup() jest zgodne z SVr4, 4.3BSD, POSIX.1-2001. strndup() jest  zgodna  z  POSIX.1-2008.  strdupa()  i
       strndupa() są rozszerzeniami GNU.

ZOBACZ TAKŻE

       alloca(3), calloc(3), free(3), malloc(3), realloc(3), string(3), wcsdup(3)

TŁUMACZENIE

       Autorami    polskiego    tłumaczenia   niniejszej   strony   podręcznika   są:   Andrzej   Krzysztofowicz
       <ankry@green.mf.pg.gda.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

       Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje  o  warunkach  licencji  można  uzyskać
       zapoznając  się  z  GNU General Public License w wersji 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ lub
       nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

       Błędy w tłumaczeniu  strony  podręcznika  prosimy  zgłaszać  na  adres  listy  dyskusyjnej  ⟨manpages-pl-
       list@lists.sourceforge.net⟩.