_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. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.