Your Browser is not longer supported
Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...
{{viewport.spaceProperty.prod}}
vsnprintf - Formatierte Ausgabe in eine Zeichenkette
&pagelevel(4)&pagelevel
Definition | #include <stdarg.h> #include <stdio.h> int vsnprintf(char *s, size_t n, const char *format, va_list arg); |
Beschreibung | vsnprintf() bereitet Daten (Zeichen, Zeichenketten, numerische Werte) gemäß den Angaben in der Zeichenkette format auf und schreibt die Daten in den Bereich, auf den s zeigt.
vsnprintf() gleicht der Funktion vsprintf() . Im Unterschied zu vsprintf() bricht vsnprintf() die Ausgabe beim Erreichen der mit dem Parameter n spezifizierten Länge ab, wodurch ein Pufferüberlauf verhindert werden kann. n darf nicht grösser sein als INT_MAX.
vsnprintf() gibt maximal n-1 Zeichen aus und fügt ein NULL-Zeichen (\0) an das Ende der Ausgabe an. Im Fall n=0 erfolgt keine Ausgabe.
vsnprintf() existiert analog zu vsprintf() als ASCII-, IEEE- und ASCII/IEEE- Funktion (vgl. Abschnitte "IEEE-Gleitpunkt-Arithmetik“ und "ASCII-Codierung“).
Parameter: Siehe fprintf() . |
Returnwert | < 0 | n > INT_MAX oder Ausgabefehler. |
| = 0 .. n-1 | Die Ausgabe konnte vollständig aufbereitet werden. Der Returnwert gibt die Länge der Ausgabe ohne das abschließende NULL -Zeichen an. |
| >= n | Die Ausgabe konnte nicht vollständig aufbereitet werden. Der Returnwert gibt die Länge ohne das abschließende NULL -Zeichen an, die eine vollständige Ausgabe benötigen würde. |