_set_output_format

Настраивает выходной формат, который используют форматированные функции ввода-вывода.

unsigned int _set_output_format(
   unsigned int format
);

Параметры

  • [входящий] format
    Значение, представляющее формат для использования.

Возвращаемое значение

Предыдущий формат вывода.

Заметки

_set_output_format используется для настройки выходного формата функций ввода-вывода, например printf_s. В настоящее время единственное правило форматирования, которое может быть изменено этой функцией - это количество цифр, отображаемое при выводе чисел с плавающей запятой в экспоненциальном виде.

По умолчанию при выводе чисел с плавающей запятой функциями, такими как printf_s, wprintf_s и другими функциями стандартной библиотеки C для Visual C++, выводятся три цифры экспоненты, даже если три цифры недостаточно для представления значения. Чтобы дополнить значение до трёх цифр, используются нули. _set_output_format позволяет изменить это поведение так, чтобы печатались только две цифры экспоненты, если только размер экспоненты не требует третьей цифры.

Чтобы включить двухзначные экспоненты , вызовите эту функцию с параметром _TWO_DIGIT_EXPONENT, как показано в примере. Чтобы отключить двухзначные экспоненты, вызовите эту функции с аргументом 0.

Требования

Подпрограмма

Обязательный заголовок

_set_output_format

<stdio.h>

Дополнительные сведения о совместимости см. в разделе Совместимость во введении.

Эквивалент в .NET Framework

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

Пример

// 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);
}
  

См. также

Ссылки

printf_s, _printf_s_l, wprintf_s, _wprintf_s_l

Символы поля типа printf

_get_output_format