snprintf_s, snwprintf_s

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu stdio.h - Index


Header-Datei

stdio.h

Kategorie

Funktionen für die formatierte Eingabe/Ausgabe

Prototyp

int snprintf_s(char * restrict s, rsize_t n, const char * restrict format, ...);

int snwprintf_s(wchar_t * restrict s, rsize_t n, const wchar_t * restrict format, ...);

Beschreibung

Sendet die formatierte Ausgabe an den Puffer s mit der im Parameter n angegebenen Maximallänge.

snprintf_s entspricht snprintf fügt aber Laufzeiteinschränkungen hinzu, die verhindern, dass format Null und n kleiner als Null sowie kleiner als RSIZE_MAX ist.

Wenn ein Fehler auftritt, und Laufzeiteinschränkungen gültig sind, dann setzt snprintf_s s[0] auf Null.

Im Gegensatz zu sprintf_s, swprintf_s verkürzt snprintf_s das Ergebnis auf die Länge des Arrays, auf das s zeigt.

Rückgabewert

Anzahl der ausgegebenen Zeichen (sofern s groß genug ist) ohne das abschließende Zeichen '\0'. Bei einer Verletzung von Laufzeiteinschränkungen wird ein negativer Wert zurückgegeben.

Hinweis: Das Zeichen '\0' wird nur geschrieben, wenn der Rückgabewert größer oder gleich Null und kleiner als n ist.

Beispiel

#include <stdio.h> 
#include <math.h> 
int main(void) 
{ 
   char buffer[80];
   snprintf_s(buffer, 40, "An approximation of Pi is %f\n", M_PI);  
   puts(buffer); 
   return 0;
}

Siehe auch