Partager via


fprintf_s, _fprintf_s_l, fwprintf_s, _fwprintf_s_l

Imprimez les données mises en forme dans un flux.Ce sont des versions de fprintf, _fprintf_l, fwprintf, _fwprintf_l avec des améliorations de sécurité comme décrit dans Fonctionnalités de sécurité du 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 ]…
);

Paramètres

  • stream
    Pointeur vers la structure d' FILE .

  • format
    Chaîne de format.

  • argument
    arguments facultatifs.

  • locale
    Les paramètres régionaux à utiliser.

Valeur de retour

fprintf_s retourne le nombre d'octets écrits.fwprintf_s retourne le nombre de caractères larges écrits.Chacune de ces fonctions retourne une valeur négative à la place lorsqu'une erreur de sortie se produit.

Notes

fprintf_s met en forme et imprime un ensemble de caractères et les valeurs à la sortie stream*.* Chaque fonction argument (le cas échéant) est converti et de sortie en fonction de la spécification du format correspondante dans format*.* Pour fprintf_s, l'argument d' format présente la même syntaxe et utilisation qu'elle a dans printf_s.

fwprintf_s est une version à caractère élargi d' fprintf_s; dans fwprintf_s, format est une chaîne à caractères larges.Ces fonctions se comportent de la même si le flux est ouvert en mode ANSI.fprintf_s ne prend pas en charge actuellement la sortie dans un flux d'UNICODE.

Les versions de ces fonctions par le suffixe d' _l sont identiques mais elles utilisent le paramètre de paramètres régionaux passé au lieu des paramètres régionaux.

Note de sécuritéNote de sécurité

assurez-vous qu' format n'est pas une chaîne définie par l'utilisateur.

Comme les versions non sécurisées (consultez fprintf, _fprintf_l, fwprintf, _fwprintf_l), ces fonctions valident leurs paramètres et appellent le gestionnaire de paramètre non valide, comme décrit dans Validation des paramètres, si stream ou format est un pointeur null.Ces fonctions diffèrent des versions non sécurisées car la chaîne de format elle-même est également validée.S'il y a inconnu ou mal formé mise en forme des spécificateurs, ces fonctions génèrent l'exception de paramètre non valide.Dans tous les cas, s'il permet à l'exécution de se poursuivre, retournent -1 de fonctions et l'ensemble errno à EINVAL.Consultez _doserrno, errno, _sys_errlist, et _sys_nerr pour plus d'informations sur ce point, ainsi que d'autres, les codes d'erreur.

mappages de routines de texte générique

routine de TCHAR.H

_MBCS & de _UNICODE non défini

_MBCS défini

_UNICODE défini

_ftprintf_s

fprintf_s

fprintf_s

fwprintf_s

_ftprintf_s_l

_fprintf_s_l

_fprintf_s_l

_fwprintf_s_l

Pour plus d'informations, consultez Spécifications de format.

Configuration requise

Fonction

en-tête requis

fprintf_s, _fprintf_s_l

<stdio.h>

fwprintf_s, _fwprintf_s_l

<stdio.h> ou <wchar.h>

Pour des informations de compatibilité supplémentaires, consultez compatibilité dans l'introduction.

Exemple

// 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" );
}
  

Équivalent .NET Framework

System : : E/S : : StreamWriter : : Écriture

Voir aussi

Référence

E/S de flux

_cprintf, _cprintf_l, _cwprintf, _cwprintf_l

fscanf, _fscanf_l, fwscanf, _fwscanf_l

sprintf, _sprintf_l, swprintf, _swprintf_l, __swprintf_l