_get_printf_count_output
Určuje, zda funkce , , wprintf
_printf_l
,_wprintf_l
-family podporují formát %n.printf
Syntaxe
int _get_printf_count_output();
Vrácená hodnota
Pokud je podporovaná hodnota nenulová %n
, hodnota 0, pokud %n
není podporovaná.
Poznámky
Pokud %n
není podporováno (výchozí), všechny %n
nalezené ve formátovacím řetězci některé z printf
funkcí vyvolá neplatnou obslužnou rutinu parametru, jak je popsáno v ověření parametru. Pokud %n
je povolená podpora (viz _set_printf_count_output
), chová %n
se tak, jak je popsáno v syntaxi specifikace formátu: printf
a wprintf
funkce.
Důležité
Počínaje Windows 10 verze 2004 (build 19041) printf
vytiskne řada funkcí přesně reprezentovatelná čísla s plovoucí desetinnou čárkou podle pravidel IEEE 754 pro zaokrouhlování. V předchozích verzích Windows by se vždy zaokrouhlila přesně reprezentovatelná čísla s plovoucí desetinnou čárkou končící na 5. IEEE 754 uvádí, že musí zaokrouhlit na nejbližší sudou číslici (označované také jako "Zaokrouhlování bankera"). Například obě printf("%1.0f", 1.5)
a printf("%1.0f", 2.5)
měly by se zaokrouhlit na 2. Dříve by se 1,5 zaokrouhlo na 2 a 2,5 by se zaokrouhlilo na 3. Tato změna má vliv jenom na přesně reprezentovatelná čísla. Například hodnota 2,35 (která je při znázornění v paměti blíže 2,350000000000008) pokračuje zaokrouhlit nahoru na 2,4. Zaokrouhlování provedené těmito funkcemi nyní respektuje také režim zaokrouhlování s plovoucí desetinou čárkou nastavený .fesetround
Dříve bylo zaokrouhlení vždy zvoleno FE_TONEAREST
chování. Tato změna má vliv jenom na programy vytvořené pomocí sady Visual Studio 2019 verze 16.2 a novější. Pokud chcete použít starší chování zaokrouhlení s plovoucí desetinou čárkou, použijte odkaz na legacy_stdio_float_rounding.obj.
Požadavky
Rutina | Požadovaný hlavičkový soubor |
---|---|
_get_printf_count_output |
<stdio.h> |
Další informace o kompatibilitě najdete v tématu Kompatibilita.
Příklad
Podívejte se na příklad pro _set_printf_count_output
.