_set_output_format_set_output_format

Personnalise les formats de sortie utilisés par les fonctions d’E-S mises en forme.Customizes output formats used by formatted I/O functions.

Important

Cette fonction est obsolète.This function is obsolete. Depuis Visual Studio 2015, elle n’est pas disponible dans la bibliothèque CRT.Beginning in Visual Studio 2015, it is not available in the CRT.

SyntaxeSyntax

unsigned int _set_output_format(
   unsigned int format
);

ParamètresParameters

formatformat
[in] Valeur représentant le format à utiliser.[in] An value representing the format to use.

Valeur de retourReturn value

Le format de sortie précédent.The previous output format.

NotesRemarks

_set_output_format est utilisé pour configurer la sortie de fonctions d’E-S mises en forme, comme printf_s._set_output_format is used to configure the output of formatted I/O functions such as printf_s. Actuellement, la seule convention de mise en forme qui peut être changée par cette fonction est le nombre de chiffres affichés dans les exposants dans la sortie des nombres à virgule flottante.At present, the only formatting convention that can be changed by this function is the number of digits displayed in exponents in the output of floating point numbers.

Par défaut, la sortie des nombres à virgule flottante par des fonctions comme printf_s, wprintf_set les fonctions connexes de la bibliothèque C standard de Visual C++ utilise trois chiffres pour l’exposant, même si trois chiffres ne sont pas nécessaires pour représenter la valeur de l’exposant.By default, the output of floating point numbers by functions such as printf_s, wprintf_s, and related functions in the Visual C++ Standard C library prints three digits for the exponent, even if three digits are not required to represent the value of the exponent. Des zéros sont utilisés pour compléter la valeur sur trois chiffres.Zeroes are used to pad the value to three digits. _set_output_format vous permet de changer ce comportement pour que deux chiffres seulement soient utilisés dans l’exposant, sauf si un troisième chiffre est requis par la taille de l’exposant._set_output_format allows you to change this behavior so that only two digits are printed in the exponent unless a third digit is required by the size of the exponent.

Pour activer des exposants à deux chiffres, appelez cette fonction avec le paramètre _TWO_DIGIT_EXPONENT, comme illustré dans l’exemple.To enable two-digit exponents, call this function with the parameter _TWO_DIGIT_EXPONENT, as shown in the example. Pour désactiver les exposants à deux chiffres, appelez cette fonction avec un argument ayant la valeur 0.To disable two digit exponents, call this function with an argument of 0.

Configuration requiseRequirements

RoutineRoutine En-tête requisRequired header
_set_output_format <stdio.h><stdio.h>

Pour plus d'informations sur la compatibilité, voir Compatibilité dans l'introduction.For more compatibility information, see Compatibility in the Introduction.

ExemplesExample

// 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);
}
1.2110e-005 2.3056e-112
1.2110E-005 2.3056E-112
1.211e-005  2.306e-112
1.211E-005  2.306E-112
1.2110e-05 2.3056e-112
1.2110E-05 2.3056E-112
  1.211e-05  2.306e-112
  1.211E-05  2.306E-112
1.2110e-005 2.3056e-112
1.2110E-005 2.3056E-112
1.211e-005  2.306e-112
1.211E-005  2.306E-112

Voir aussiSee also

printf_s, _printf_s_l, wprintf_s, _wprintf_s_lprintf_s, _printf_s_l, wprintf_s, _wprintf_s_l
_get_output_format_get_output_format