vasprintf

ASPRINTF(3)                 Linux-Programmierhandbuch                ASPRINTF(3)



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.

       ┌────────────────────────┬───────────────────────┬────────────────┐
       │Schnittstelle           Attribut              Wert           │
       ├────────────────────────┼───────────────────────┼────────────────┤
       │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.08 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 <debian-l10n-german@lists.debian.org>.



GNU                               6. März 2019                       ASPRINTF(3)