fprintf_s, _fprintf_s_l, fwprintf_s, _fwprintf_s_l

 

Veröffentlicht: Juli 2016

Die neueste Dokumentation zu Visual Studio 2017 finden Sie unter Dokumentation zu Visual Studio 2017.

Drucken Sie formatierte Daten in einen Stream. Dies sind die Versionen der Fprintf, _fprintf_l, Fwprintf, _fwprintf_l sicherheitserweiterungen wie unter Sicherheitsfunktionen in der CRT.

int fprintf_s(   
   FILE *stream,  
   const char *format [,  
   argument ]...  
);  
int _fprintf_s_l(   
   FILE *stream,  
   const char *format,  
   locale_t locale [,  
   argument ]...  
);  
int fwprintf_s(   
   FILE *stream,  
   const wchar_t *format [,  
   argument ]...  
);  
int _fwprintf_s_l(   
   FILE *stream,  
   const wchar_t *format,  
   locale_t locale [,  
   argument ]…  
);  

Parameter

stream
Zeiger zur FILE -Struktur.

format
Formatsteuerzeichenfolge.

argument
Optionale Argumente.

locale
Das zu verwendende Gebietsschema.

fprintf_sGibt die Anzahl der geschriebenen Bytes zurück. fwprintf_sGibt die Anzahl der geschriebenen Zeichen zurück. Jede dieser Funktionen gibt einen negativen Wert stattdessen zurück, wenn ein Ausgabefehler auftritt.

fprintf_sformatiert und druckt eine Reihe von Zeichen und Werten für die Ausgabe stream . Jede Funktion argument (sofern vorhanden) konvertiert und entsprechend der jeweiligen Formatangabe in output format . Für fprintf_s, format -Argument verfügt über die gleiche Syntax und verwenden, die sie in printf_s.

fwprintf_sist eine Breitzeichen-Version von fprintf_s, in fwprintf_s, format ist eine Zeichenfolge mit Breitzeichen. Diese Funktionen verhalten sich identisch, wenn der Stream im ANSI-Modus geöffnet ist. fprintf_s unterstützt derzeit die Ausgabe in einen UNICODE-Stream nicht.

Die Versionen dieser Funktionen mit dem _l-Suffix sind beinahe identisch, verwenden jedoch den ihnen übergebenen Gebietsschemaparameter anstelle des aktuellen Gebietsschemas.

System_CAPS_ICON_important.jpg Wichtig

Stellen Sie sicher, dass format keine benutzerdefinierte Zeichenfolge ist.

Wie die nicht sicheren Versionen (finden Sie unter Fprintf, _fprintf_l, Fwprintf, _fwprintf_l), diese Funktionen überprüfen ihre Parameter und den Handler für ungültige Parameter aufgerufen, wie in beschrieben Parametervalidierung, wenn entweder stream oder format ist ein null-Zeiger. Diese Funktionen unterscheiden sich von den nicht sicheren Versionen darin, dass auch die Formatzeichenfolge selbst überprüft wird. Wenn alle unbekannte oder ungültige Formatbezeichner vorhanden sind, generieren diese Funktionen die Ausnahme für ungültige Parameter. Wenn die weitere Ausführung zugelassen wird, geben diese Funktionen in allen Fällen "– 1" zurück und legen errno auf EINVAL fest. Finden Sie unter _doserrno, Errno, _sys_errlist und _sys_nerr Weitere Informationen zu diesen und anderen Fehlercodes.

Zuordnung generischer Textroutinen

TCHAR.H-Routine_UNICODE und _MBCS nicht definiert._MBCS definiert_UNICODE definiert
_ftprintf_sfprintf_sfprintf_sfwprintf_s
_ftprintf_s_l_fprintf_s_l_fprintf_s_l_fwprintf_s_l

Weitere Informationen finden Sie unter Formatangaben.

FunktionErforderlicher Header
fprintf_s, _fprintf_s_l<stdio.h>
fwprintf_s, _fwprintf_s_l<stdio.h> oder <wchar.h>

Zusätzliche Informationen zur Kompatibilität finden Sie unter Kompatibilität in der Einführung.

// crt_fprintf_s.c  
// This program uses fprintf_s to format various  
// data and print it to the file named FPRINTF_S.OUT. It  
// then displays FPRINTF_S.OUT on the screen using the system  
// function to invoke the operating-system TYPE command.  
  
#include <stdio.h>  
#include <process.h>  
  
FILE *stream;  
  
int main( void )  
{  
   int    i = 10;  
   double fp = 1.5;  
   char   s[] = "this is a string";  
   char   c = '\n';  
  
   fopen_s( &stream, "fprintf_s.out", "w" );  
   fprintf_s( stream, "%s%c", s, c );  
   fprintf_s( stream, "%d\n", i );  
   fprintf_s( stream, "%f\n", fp );  
   fclose( stream );  
   system( "type fprintf_s.out" );  
}  

this is a string  
10  
1.500000  

System::IO::StreamWriter::Write

Stream-e/a
_cprintf, _cprintf_l, _cwprintf, _cwprintf_l
Fscanf, _fscanf_l, Fwscanf, _fwscanf_l
Sprintf _sprintf_l, Swprintf, _swprintf_l, __swprintf_l

Anzeigen: