Provided by: manpages-de-dev_4.13-4_all bug

BEZEICHNUNG

       asprintf, vasprintf - Ausgabe in reservierte Zeichenkette

ÜBERSICHT

       #define _GNU_SOURCE /* siehe feature_test_macros(7) */
       #include <stdio.h>

       int asprintf(char **strp, const char *fmt, …);

       int vasprintf(char **strp, const char *fmt, va_list ap);

BESCHREIBUNG

       Die  Funktionen  asprintf()  und  vasprintf()  sind analog zu sprintf(3) und vsprintf(3). Der Unterschied
       besteht darin, dass sie ausreichend großen Speicherplatz für die Zeichenkette reservieren, um die Ausgabe
       inklusive des abschließenden NULL-Bytes ('\0') aufzunehmen. Ein Zeiger auf den  Speicher  wird  über  den
       ersten  Parameter  zurückgegeben.  Dieser  Zeiger sollte an free(3) übergeben werden, um den reservierten
       Speicherbereich wieder freizugeben, wenn er nicht mehr benötigt wird.

RÜCKGABEWERT

       Bei Erfolg geben diese Funktionen, wie auch sprintf(3), die Anzahl ausgegebener Bytes zurück. Wenn Fehler
       auftreten (z.B. eine gescheiterte Speicherreservierung), geben diese Funktionen -1 zurück. Dann  ist  der
       Inhalt von strp nicht definiert.

ATTRIBUTE

       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
       ┌─────────────────────────┬───────────────────────┬────────────────┐
       │ SchnittstelleAttributWert           │
       ├─────────────────────────┼───────────────────────┼────────────────┤
       │ asprintf(), vasprintf() │ Multithread-Fähigkeit │ MT-Safe locale │
       └─────────────────────────┴───────────────────────┴────────────────┘

KONFORM ZU

       Diese  Funktionen  sind  GNU-Erweiterungen. Sie sind nicht in C oder POSIX definiert. Sie sind auch unter
       *BSD verfügbar. Die FreeBSD-Implementierung setzt strp bei Fehlern auf NULL.

SIEHE AUCH

       free(3), malloc(3), printf(3)

KOLOPHON

       Diese Seite ist Teil der Veröffentlichung  5.10  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 David Thamm <dthamm@bfs.de>, Martin Schulze
       <joey@infodrom.org> 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 die
       Mailingliste der Übersetzer.

GNU                                               6. März 2019                                       ASPRINTF(3)