Udostępnij za pośrednictwem


_get_printf_count_output

Wskazuje, czy funkcje , , wprintf_printf_l,_wprintf_l -family obsługują format %n.printf

Składnia

int _get_printf_count_output();

Wartość zwracana

Wartość niezerowa, jeśli %n jest obsługiwana; 0, jeśli %n nie jest obsługiwana.

Uwagi

Jeśli %n nie jest obsługiwana (wartość domyślna), każda %n znaleziona w ciągu formatu jednej z printf funkcji wywołuje nieprawidłową procedurę obsługi parametrów, zgodnie z opisem w temacie Weryfikacja parametrów. Jeśli %n obsługa jest włączona (zobacz _set_printf_count_output), %n zachowuje się zgodnie z opisem w temacie Składnia specyfikacji formatu: printf i wprintf funkcje.

Ważne

Począwszy od systemu Windows 10 w wersji 2004 (kompilacja 19041), printf rodzina funkcji drukuje dokładnie możliwe liczby zmiennoprzecinkowe zgodnie z regułami IEEE 754 dotyczącymi zaokrąglania. W poprzednich wersjach systemu Windows dokładnie reprezentowane liczby zmiennoprzecinkowe kończące się na "5" zawsze zaokrągla się w górę. IEEE 754 stwierdza, że muszą zaokrąglić do najbliższej parzysta cyfra (znana również jako "Zaokrąglanie Bankiera"). Na przykład oba printf("%1.0f", 1.5) printf("%1.0f", 2.5) elementy i powinny być zaokrąglone do 2. Wcześniej 1,5 zaokrągliłoby się do 2 i 2,5 do 3. Ta zmiana dotyczy tylko dokładnie możliwych do reprezentowania liczb. Na przykład 2,35 (który, gdy jest reprezentowany w pamięci, jest bliżej 2,350000000000000008) nadal zaokrągla się do 2,4. Zaokrąglanie wykonywane przez te funkcje jest teraz również zgodne z trybem zaokrąglania zmiennoprzecinkowego ustawionym przez fesetround. Wcześniej zaokrąglanie zawsze wybierało FE_TONEAREST zachowanie. Ta zmiana dotyczy tylko programów utworzonych przy użyciu programu Visual Studio 2019 w wersji 16.2 lub nowszej. Aby użyć starszego zachowania zaokrąglania zmiennoprzecinkowego, połącz się z elementem "legacy_stdio_float_rounding.obj".

Wymagania

Procedura Wymagany nagłówek
_get_printf_count_output <stdio.h>

Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.

Przykład

Zobacz przykład dla elementu _set_printf_count_output.

Zobacz też

_set_printf_count_output