strdup(3) Library Functions Manual strdup(3) BEZEICHNUNG strdup, strndup, strdupa, strndupa - dupliziert eine Zeichenkette BIBLIOTHEK Standard-C-Bibliothek (libc, -lc) UBERSICHT #include 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 zuruck, die eine Kopie der Zeichenkette s ist. Der Speicher fur die neue Zeichenkette wird mit malloc(3) reserviert und kann mit free(3) wieder freigegeben werden. Die Funktion strndup() ist ahnlich, kopiert aber maximal n Bytes. Falls s langer als n Bytes ist, werden davon nur n kopiert und ein abschliessendes Nullbyte (>>\0<<) angehangt. strdupa() und strndupa() sind ahnlich, reservieren den Speicher aber mittels alloca(3). RUCKGABEWERT Bei Erfolg gibt die Funktion strdup() einen Zeiger auf die kopierte Zeichenkette zuruck oder NULL, wenn nicht genugend Speicher verfugbar war, wobei errno den Fehler anzeigt. FEHLER ENOMEM nicht ausreichend Speicher fur die Bereitstellung der kopierten Zeichenkette verfugbar ATTRIBUTE Siehe attributes(7) fur eine Erlauterung der in diesem Abschnitt verwandten Ausdrucke. +--------------------------------+-------------------------+-----------+ |Schnittstelle | Attribut | Wert | +--------------------------------+-------------------------+-----------+ |strdup(), strndup(), strdupa(), | Multithread-Fahigkeit | MT-Sicher | |strndupa() | | | +--------------------------------+-------------------------+-----------+ STANDARDS strdup() strndup() POSIX.1-2008. strdupa() strndupa() GNU. GESCHICHTE strdup() SVr4, 4.3BSD-Reno, POSIX.1-2001. strndup() POSIX.1-2008. strdupa() strndupa() GNU. SIEHE AUCH alloca(3), calloc(3), free(3), malloc(3), realloc(3), string(3), wcsdup(3) UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Markus Schmitt , Martin Eberhard Schauer und Mario Blattermann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . Linux man-pages 6.06 31. Oktober 2023 strdup(3)