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

BEZEICHNUNG

       strdup, strndup, strdupa, strndupa - dupliziert eine Zeichenkette

BIBLIOTHEK

       Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT

       #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);

   Mit Glibc erforderliche Feature-Test-Makros (siehe feature_test_macros(7)):

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

       strndup():
           Seit Glibc 2.10:
               _POSIX_C_SOURCE >= 200809L
           Vor 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 Nullbyte (»\0«) angehängt.

       strdupa() und strndupa() sind ähnlich, reservieren den Speicher aber mittels alloca(3).

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 den Fehler anzeigt.

FEHLER

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

ATTRIBUTE

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

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

STANDARDS

       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)

ÜBERSETZUNG

       Die  deutsche  Übersetzung  dieser  Handbuchseite  wurde  von Markus Schmitt <fw@math.uni-
       sb.de>,  Martin  Eberhard  Schauer   <Martin.E.Schauer@gmx.de>   und   Mario   Blättermann
       <mario.blaettermann@gmail.com> erstellt.

       Diese  Übersetzung  ist  Freie  Dokumentation;  lesen  Sie  die GNU General Public License
       Version 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ 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 die Mailingliste der Übersetzer ⟨debian-l10n-german@lists.debian.org⟩.