Compartilhar via


_set_printf_count_output

Ativar ou desativar o suporte a %n Formatar na printf, _printf_l, wprintf, _wprintf_l-as funções da família.

int _set_printf_count_output(
   int enable
);

Parâmetros

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

Valor de Propriedade/Valor Retornado

O estado do %n suporte antes de chamar essa função: diferente de zero se %n suporte foi ativado, 0 se ele foi desativado.

Comentários

Por motivo de segurança, suporte para o %n especificador de formato é desativado por padrão em printf e todas as suas variantes.Se %n é encontrado em um printf especificação de formato, o comportamento padrão é invocar o manipulador de parâmetro inválido, conforme descrito em Validação de parâmetro.Chamando _set_printf_count_output com um argumento diferente de zero fará com que printf-as funções da família para interpretar %n conforme descrito em printf caracteres de campo de tipo.

Requisitos

Rotina

Cabeçalho necessário

_set_printf_count_output

<stdio.h>

Para obter 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

NET Framework equivalente

Não aplicável.Para chamar a função c padrão, use PInvoke.Para obter mais informações, consulte Exemplos de invocação de plataforma.

Consulte também

Referência

_get_printf_count_output