_set_output_format
Personaliza os formatos de saída usados por funções formatados de E/S.
unsigned int _set_output_format(
unsigned int format
);
Parâmetros
- [entrada] format
Um valor que representa o formato que deseja usar.
Valor de retorno
O formato anterior de saída.
Comentários
_set_output_format é usado para configurar a saída das funções de E/S formatada como printf_s. No momento, a única convenção de formatação que pode ser alterada por essa função é o número de dígitos exibidos em expoentes na saída de números de ponto flutuante.
Por padrão, a saída de números de ponto flutuante por funções como printf_s, wprintf_s, e as funções relacionadas na biblioteca padrão do Visual C++ 2.0 aparecem em três dígitos para o expoente, mesmo que três dígitos não são necessários para representar o valor do expoente. Zeros serão usados para preencher o valor a três dígitos. _set_output_format permite alterar este comportamento de modo que apenas dois dígitos são impressos no expoente a menos que um terceiro dígito exigido pelo tamanho do expoente.
Para habilitar expoentes de dois dígitos, chamar essa função com o parâmetro _TWO_DIGIT_EXPONENT, conforme mostrado no exemplo. Para desabilitar expoentes de dois dígitos, chamar essa função com um argumento de 0.
Requisitos
Rotina |
Cabeçalho necessário |
---|---|
_set_output_format |
<stdio.h> |
Para obter mais informações sobre compatibilidade, consulte Compatibilidade na Introdução.
Equivalência do .NET Framework
Não aplicável. Para chamar a função padrão de C, use PInvoke. Para obter mais informações, consulte Exemplos de chamadas de plataformas.
Exemplo
// 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);
}
Consulte também
Referência
printf_s, _printf_s_l, wprintf_s, _wprintf_s_l