Compartilhar via


_set_printf_count_output

Habilitar ou desabilitar suporte de formato em printf, _printf_l, wprintf, _wprintf_l- funções de %n de família.

int _set_printf_count_output(
   int enable
);

Parâmetros

  • enable
    Um valor diferente de zero para habilitar o suporte de %n , 0 para desabilitar o suporte de %n .

Valor de propriedade/valor de retorno

O estado de suporte de %n antes de chamar essa função: diferente de zero se o suporte de %n foi habilitado, 0 se foi desabilitado.

Comentários

Por questões de segurança, o suporte para o especificador de formato de %n é desabilitado por padrão em printf e em todas as variantes. Se %n é encontrado em uma especificação do formato de printf , o comportamento padrão é chamar o manipulador inválido do parâmetro como descrito em Validação do parâmetro. A chamada _set_printf_count_output com um argumento diferente de zero faz com que printf- funções de família para interpretar %n conforme descrito em Caracteres de campo de tipo printf.

Requisitos

Rotina

Cabeçalho necessário

_set_printf_count_output

<stdio.h>

Para informações adicionais de compatibilidade, consulte Compatibilidade na Introdução.

Exemplo

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

Saída

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

Equivalente ao .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.

Consulte também

Referência

_get_printf_count_output