focal (3) strdup.3.gz

Provided by: manpages-de-dev_2.16-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():
           _XOPEN_SOURCE >= 500
               || /* Seit Glibc 2.12: */ _POSIX_C_SOURCE >= 200809L
               || /* Glibc-Versionen <= 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 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  5.03  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 https://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>.