Condividi tramite


_set_printf_count_output

Abilita o disabilita il supporto del formato %n nella famiglia di funzioni printf, _printf_l, wprintf, _wprintf_l.

int _set_printf_count_output(
   int enable
);

Parametri

  • enable
    Un valore diverso da zero per consentire il supporto di %n, 0 per disabilitare il supporto di %n.

Valore proprietà/Valore restituito

Lo stato del supporto di %n prima di chiamare questa funzione: diverso da zero se il supporto di %n è attivato, 0 se è stato disabilitato.

Note

Per motivi di sicurezza, il supporto dell'identificatore di formato %n è disabilitato per impostazione predefinita in printf e tutte le sue varianti. Se %n viene visualizzato in una specifica di formato di printf, il comportamento predefinito consiste nell'invocare il gestore di parametro non valido come descritto in Convalida dei parametri. Chiamare _set_printf_count_output con un argomento diverso da zero farà in modo che la famiglia di funzioni printf interpretino %n come descritto in Caratteri di campo di tipo per printf.

Requisiti

Routine

Intestazione obbligatoria

_set_printf_count_output

<stdio.h>

Per ulteriori informazioni sulla compatibilità, vedere Compatibilità nell'Introduzione.

Esempio

// 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

Equivalente in NET Framework

Non applicabile. Per chiamare la funzione standard C, utilizzare PInvoke. Per ulteriori informazioni, vedere Esempi di Invocazione della Piattaforma.

Vedere anche

Riferimenti

_get_printf_count_output