Поделиться через


_set_printf_count_output

Включает или отключает поддержку формата %n в функциях семейства printf, _printf_l, wprintf, _wprintf_l.

int _set_printf_count_output(
   int enable
);

Параметры

  • enable
    Отличное от нуля значение для включения поддержки %n, 0 для отключения поддержки %n.

Значение свойства, возвращаемое значение

Состояние поддержки %n перед вызовом этой функции: ненулевое, если поддержка %n была включена; 0, если она была отключена.

Заметки

В целях безопасности поддержка описателя формата %n запрещена по умолчанию в printf и всех ее вариантах. Если %n обнаруживается в спецификации формата printf, реакция по умолчанию — вызвать обработчик недопустимого параметра, как описано в разделе Проверка параметров. Вызов _set_printf_count_output с ненулевым аргументом приведет к тому, что функции семейства printf интерпретируют %n, как описано в разделе Символы поля типа printf.

Требования

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

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

_set_printf_count_output

<stdio.h>

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

Пример

// crt_set_printf_count_output.c
#include <stdio.h>

int main()
{
   int e;
   int i;
   e = _set_printf_count_output( 1 );
   printf( "%%n support was %sabled.\n",
        e ? "en" : "dis" );
   printf( "%%n support is now %sabled.\n",
        _get_printf_count_output() ? "en" : "dis" );
   printf( "12345%n6789\n", &i ); // %n format should set i to 5
   printf( "i = %d\n", i );
}

Output

%n support was disabled.
%n support is now enabled.
123456789
i = 5

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

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

См. также

Ссылки

_get_printf_count_output