Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Povolte nebo zakažte podporu formátu %n veprintf funkcích , _printf_l, wprintf_wprintf_l-family.
Syntaxe
int _set_printf_count_output(
int enable
);
Parametry
enable
Nenulová hodnota pro povolení %n podpory, 0 pro zakázání %n podpory.
Hodnota vlastnosti nebo návratová hodnota
Stav podpory %n před voláním této funkce: nenulový, pokud byla povolena %n podpora, 0, pokud byla zakázaná.
Poznámky
Z bezpečnostních důvodů je podpora specifikátoru formátu %n ve výchozím nastavení printf zakázaná a všechny její varianty. Pokud se ve specifikaci formátu zjistí printf %n, výchozím chováním je vyvolání neplatné obslužné rutiny parametru, jak je popsáno v ověření parametru. Volání _set_printf_count_output s nenulovým argumentem způsobí printf, že funkce -family interpretují %n , jak je popsáno v syntaxi specifikace formátu: printf a wprintf funkce.
Požadavky
| Rutina | Požadovaný hlavičkový soubor |
|---|---|
_set_printf_count_output |
<stdio.h> |
Další informace o kompatibilitě najdete v tématu Kompatibilita.
Příklad
// 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 );
}
%n support was disabled.
%n support is now enabled.
123456789
i = 5