_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