Provided by: manpages-de-dev_1.11-1_all bug

BEZEICHNUNG

       strdup, strndup, strdupa, strndupa - dupliziert eine Zeichenkette

ÜBERSICHT

       #include <string.h>

       char *strdup(const char *s);

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

   Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):

       strdup():
           _SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE >= 500 ||
           _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED
           || /* Seit Glibc 2.12: */ _POSIX_C_SOURCE >= 200809L
       strndup():
           Seit Glibc 2.10:
               _POSIX_C_SOURCE >= 200809L || _XOPEN_SOURCE >= 700
           Bis Glibc 2.10:
               _GNU_SOURCE
       strdupa(), strndupa(): _GNU_SOURCE

BESCHREIBUNG

       Die Funktion strdup() gibt einen Zeiger auf eine neue Zeichenkette zurück, die eine  Kopie
       der  Zeichenkette  s  ist.  Der  Speicher  für  die  neue  Zeichenkette wird mit malloc(3)
       reserviert und kann mit free(3) wieder freigegeben werden.

       Die Funktion strndup() ist ähnlich, kopiert aber maximal n Bytes. Falls  s  länger  als  n
       Bytes ist, werden davon nur n kopiert und ein abschließendes Null-Byte ('\0') angehängt.

       strdupa()  und  strndupa()  sind ähnlich, reservieren den Speicher aber mittels alloca(3).
       Sie sind nur verfügbar, wenn die GNU-GCC-Suite verwendet wird  und  leiden  unter  den  in
       alloca(3) beschriebenen Einschränkungen.

RÜCKGABEWERT

       Bei  Erfolg  gibt  die Funktion strdup() einen Zeiger auf die kopierte Zeichenkette zurück
       oder NULL, wenn nicht genügend Speicher verfügbar war, wobei errno die Ursache des Fehlers
       bezeichnet.

FEHLER

       ENOMEM nicht   ausreichend   Speicher  verfügbar  für  die  Bereitstellung  der  kopierten
              Zeichenkette

ATTRIBUTE

       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.

       ┌────────────────────────────────┬───────────────────────┬─────────┐
       │SchnittstelleAttributWert    │
       ├────────────────────────────────┼───────────────────────┼─────────┤
       │strdup(), strndup(), strdupa(), │ Multithread-Fähigkeit │ MT-Safe │
       │strndupa()                      │                       │         │
       └────────────────────────────────┴───────────────────────┴─────────┘

KONFORM ZU

       strdup() ist konform zu SVr4, 4.3BSD, POSIX.1-2001. strndup() ist konform zu POSIX.1-2008.
       strdupa() und strndupa() sind GNU-Erweiterungen.

SIEHE AUCH

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

KOLOPHON

       Diese  Seite  ist  Teil  der  Veröffentlichung  4.04  des  Projekts  Linux-man-pages. Eine
       Beschreibung des Projekts, Informationen, wie Fehler  gemeldet  werden  können  sowie  die
       aktuelle Version dieser Seite finden sich unter http://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von Markus Schmitt <fw@math.uni-sb.de>
       und Martin Eberhard Schauer <Martin.E.Schauer@gmx.de> erstellt.

       Diese Übersetzung ist Freie Dokumentation;  lesen  Sie  die  GNU  General  Public  License
       Version   3  oder  neuer  bezüglich  der  Copyright-Bedingungen.  Es  wird  KEINE  HAFTUNG
       übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-
       Mail an <debian-l10n-german@lists.debian.org>.