table of contents
other versions
- buster 2.12-1
- buster-backports 4.2.0-1~bpo10+2
- testing 4.9.1-7
- unstable 4.9.1-7
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.04 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>.
6. März 2019 | GNU |