_get_printf_count_output
Indique si , , _printf_l
, _wprintf_l
wprintf
-family functions prennent en charge le format %n.printf
Syntaxe
int _get_printf_count_output();
Valeur retournée
Non zéro s’il %n
est pris en charge ; 0 s’il %n
n’est pas pris en charge.
Notes
S’il %n
n’est pas pris en charge (valeur par défaut), les éléments %n
trouvés dans la chaîne de format de l’une des printf
fonctions appellent le gestionnaire de paramètres non valide, comme décrit dans la validation des paramètres. Si %n
la prise en charge est activée (voir _set_printf_count_output
), %n
se comporte comme décrit dans la syntaxe de spécification format : printf
et wprintf
les fonctions.
Important
À compter de Windows 10 version 2004 (build 19041), la famille de fonctions printf
imprime exactement les nombres à virgule flottante pouvant être représentés en suivant les règles IEEE 754 pour l’arrondi. Dans les versions précédentes de Windows, les nombres à virgule flottante pouvant être représentés exactement qui se terminent par « 5 » sont toujours arrondis à la valeur supérieure. IEEE 754 indique qu’ils doivent être arrondis au chiffre pair le plus proche (également appelé « arrondi du banquier »). Par exemple, printf("%1.0f", 1.5)
et printf("%1.0f", 2.5)
doivent être arrondis à 2. Avant, 1.5 aurait été arrondi à 2 et 2.5 à 3. Ce changement affecte uniquement les nombres représentables avec précision. Par exemple, 2.35 (qui, lorsqu’il est représenté en mémoire, est plus proche de 2.35000000000000008) continue d’être arrondi à la valeur supérieure 2.4. L’arrondi effectué par ces fonctions respecte également le mode d’arrondi à virgule flottante défini par fesetround
. Avant, l’arrondi choisissait toujours le comportement FE_TONEAREST
. Ce changement affecte uniquement les programmes générés à l’aide de Visual Studio 2019 versions 16.2 et ultérieures. Pour utiliser le comportement d’arrondi à virgule flottante hérité, liez avec 'legacy_stdio_float_rounding.obj'.
Spécifications
Routine | En-tête requis |
---|---|
_get_printf_count_output |
<stdio.h> |
Pour plus d’informations sur la compatibilité, consultez Compatibility.
Exemple
Consultez l’exemple pour _set_printf_count_output
.