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.
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.74 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
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>.