Se recomienda usar Visual Studio 2017

_set_output_format

 

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

Personaliza los formatos de salida que usan las funciones de E/S con formato.

System_CAPS_ICON_important.jpg Importante

Esta función está obsoleta. A partir de Visual Studio 2015, no está disponible en CRT.

unsigned int _set_output_format(  
   unsigned int format  
);  

Parámetros

[in] format
Un valor que representa el formato que se utilizará.

El formato de salida anterior.

_set_output_format se utiliza para configurar la salida de las funciones de E/S con formato como printf_s. En la actualidad, la única convención de formato que esta función puede cambiar es el número de dígitos que se muestran en los exponentes de la salida de números de punto flotante.

De forma predeterminada, la salida de números de punto flotante con funciones como printf_s, wprintf_s y funciones relacionadas de la biblioteca de C estándar de Visual C++ imprime tres dígitos del exponente, incluso aunque no se requieran tres dígitos para representar el valor del exponente. Se utilizan ceros para rellenar el valor hasta los tres dígitos._set_output_format le permite cambiar este comportamiento para que solo se impriman dos dígitos en el exponente, a menos que sea necesario un tercer dígito debido al tamaño del exponente.

Para habilitar los exponentes de dos dígitos, llame a esta función con el parámetro _TWO_DIGIT_EXPONENT, como se muestra en el ejemplo. Para deshabilitar los exponentes de dos dígitos, llame a esta función con un argumento de 0.

RutinaEncabezado necesario
_set_output_format<stdio.h>

Para obtener más información de compatibilidad, vea Compatibilidad en la Introducción.

No es aplicable. Para llamar a la función estándar de C, use PInvoke. Para obtener más información, vea Ejemplos de invocación de plataforma.

// 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  

printf_s, _printf_s_l, wprintf_s, _wprintf_s_l
printf (Caracteres de campo de tipo)
_get_output_format

Mostrar: