Partager via


_set_output_format

Personnalise des formats de sortie utilisés par les fonctions mises en forme d'E/S.

unsigned int _set_output_format(
   unsigned int format
);

Paramètres

  • [in] format
    Valeur qui représente le format à utiliser.

Valeur de retour

Le format de sortie précédent.

Notes

_set_output_format est utilisé pour configurer la sortie des fonctions mises en forme d'E/S telles que printf_s. Actuellement, la seule convention de mise en forme qui peut être modifiée par cette fonction est le nombre de chiffres affichés dans les exposants dans la sortie des nombres à virgule flottante.

Par défaut, la sortie des nombres à virgule flottante par les fonctions telles que printf_s, wprintf_s, ainsi que des fonctions de la bibliothèque Visual C++ Standard c c affiche trois chiffres dans l'exposant, même si trois chiffres ne sont pas requis pour représenter la valeur de l'exposant. Les zéros sont utilisés pour terminer la valeur à trois chiffres. _set_output_format vous permet de modifier ce comportement afin que seuls deux chiffres sont imprimés dans l'exposant à moins qu'un troisième chiffre est requis par la taille de l'exposant.

Pour activer les exposants à deux chiffres, appelez la fonction avec le paramètre _TWO_DIGIT_EXPONENT, comme illustré dans l'exemple. Pour désactiver les exposants à deux chiffres, appelez la fonction avec l'argument de 0.

Configuration requise

Routine

En-tête requis

_set_output_format

<stdio.h>

Pour plus d'informations sur la compatibilité, consultez Compatibilité dans l'introduction.

Équivalent .NET Framework

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez Exemples d'appel de plateforme.

Exemple

// crt_set_output_format.c
#include <stdio.h>

void printvalues(double x, double y)
{
   printf_s("%11.4e %11.4e\n", x, y);
   printf_s("%11.4E %11.4E\n", x, y);
   printf_s("%11.4g %11.4g\n", x, y);
   printf_s("%11.4G %11.4G\n", x, y);
}


int main()
{
   double x = 1.211E-5;
   double y = 2.3056E-112;
   unsigned int old_exponent_format;

   // Use the default format
   printvalues(x, y);

   // Enable two-digit exponent format
   old_exponent_format = _set_output_format(_TWO_DIGIT_EXPONENT);

   printvalues(x, y);

   // Disable two-digit exponent format
   _set_output_format( old_exponent_format );

   printvalues(x, y);
}
  

Voir aussi

Référence

printf_s, _printf_s_l, wprintf_s, _wprintf_s_l

Caractères du champ de type printf

_get_output_format