_get_printf_count_output
Menunjukkan apakah printf
fungsi , _printf_l
, wprintf
, _wprintf_l
-family mendukung format %n .
Sintaks
int _get_printf_count_output();
Nilai hasil
Bukan nol jika %n
didukung; 0 jika %n
tidak didukung.
Keterangan
Jika %n
tidak didukung (default), apa pun yang %n
ditemukan dalam string format salah printf
satu fungsi memanggil handler parameter yang tidak valid, seperti yang dijelaskan dalam Validasi parameter. Jika %n
dukungan diaktifkan (lihat _set_printf_count_output
), maka %n
berulah seperti yang dijelaskan dalam Sintaks spesifikasi format: printf
dan wprintf
fungsi.
Penting
Mulai Windows 10 versi 2004 (build 19041), printf
keluarga fungsi mencetak angka titik mengambang yang persis dapat diwakili sesuai dengan aturan IEEE 754 untuk pembulatan. Di versi Windows sebelumnya, angka titik pecahan yang persis dapat diwakili yang berakhiran '5' akan selalu dibulatkan. IEEE 754 menyatakan bahwa mereka harus membulatkan ke digit terdekat bahkan (juga dikenal sebagai "Pembulatan Bankir"). Misalnya, dan printf("%1.0f", 1.5)
printf("%1.0f", 2.5)
harus membulatkan ke 2. Sebelumnya, 1,5 akan membulatkan ke 2 dan 2,5 akan dibulatkan ke 3. Perubahan ini hanya memengaruhi angka yang tepat yang dapat diwakili. Misalnya, 2,35 (yang, ketika diwakili dalam memori, lebih dekat ke 2,3500000000000000008) terus membulatkan ke atas hingga 2,4. Pembulatan yang dilakukan oleh fungsi-fungsi ini sekarang juga menghormati mode pembulatan titik mengambang yang ditetapkan oleh fesetround
. Sebelumnya, pembulatan selalu memilih FE_TONEAREST
perilaku. Perubahan ini hanya memengaruhi program yang dibuat menggunakan Visual Studio 2019 versi 16.2 dan yang lebih baru. Untuk menggunakan perilaku pembulatan titik mengambang warisan, tautkan dengan 'legacy_stdio_float_rounding.obj'.
Persyaratan
Rutin | Header yang diperlukan |
---|---|
_get_printf_count_output |
<stdio.h> |
Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.
Contoh
Lihat contoh untuk _set_printf_count_output
.