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
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.
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 3.42 des Projekts Linux-
man-pages. Eine Beschreibung des Projekts und Informationen, wie Fehler
gemeldet werden können, finden sich unter
http://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG¶
Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schulze
<joey@infodrom.org>, David Thamm <dthamm@bfs.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>.