FAQ:ANSI CPP:задать число знаков после запятой в функции printf — различия между версиями

Материал из Весельчак У
Перейти к: навигация, поиск
(Ветвление FAQ:ANSI CPP.)
 
 
(не показана одна промежуточная версия этого же участника)
Строка 3: Строка 3:
 
В printf в спецификаторе числа разрядов можно поставить символ "*". Тогда соответствующий, по порядку, аргумент будет интерпретирован как число знаков.
 
В printf в спецификаторе числа разрядов можно поставить символ "*". Тогда соответствующий, по порядку, аргумент будет интерпретирован как число знаков.
  
<pre>
+
<syntaxhighlight lang="cpp">
printf("%.*f", 2, 3.1415); // выведет 3.14
+
printf("%.*f", 2, 3.1415); // выведет 3.14
</pre>
+
</syntaxhighlight>
  
Для CString::Format символ "*" не работает!
+
Для CString::Format символ "*" не работает! Можно применить [[FAQ:ANSI CPP:динамически задать число знаков после запятой|альтернативный метод через предварительное формирование строки формата]].
  
 
[[Category:FAQ:ANSI CPP]]
 
[[Category:FAQ:ANSI CPP]]

Текущая версия на 21:50, 4 октября 2009

Как задать число знаков после запятой у float в функции printf?

В printf в спецификаторе числа разрядов можно поставить символ "*". Тогда соответствующий, по порядку, аргумент будет интерпретирован как число знаков.

printf("%.*f", 2, 3.1415); // выведет 3.14

Для CString::Format символ "*" не работает! Можно применить альтернативный метод через предварительное формирование строки формата.