Russian Qt Forum

Программирование => С/C++ => Тема начата: Anonymous от Апрель 02, 2004, 14:03



Название: спецификация формата double в printf
Отправлено: Anonymous от Апрель 02, 2004, 14:03
Крайне извиняюсь за тупой вопрос, но чего-то из "man 3 printf" я не понял :(

Что нужно указать в printf, чтобы вывести аргумент типа double?

Т.е. типа

double x=2;
printf("%?", x);

Какую буковку подставить заместо "?"


Название: Re: спецификация формата double в printf
Отправлено: npak от Апрель 02, 2004, 14:25
Цитата: "Anonymous"

double x=2;
printf("%?", x);

Какую буковку подставить заместо "?"


Есть варианты.

e,E -- вывод с плавающей точкой, например 2.000e+00 или 2.000E+00

f,F -- вывод с фиксированной точкой, например 2.000

g,G -- функция сама выберет, как выводить.  Если вывод в форме с фиксированной точкой даёт достаточно значащих цифр, то используется f или F, в противном случае используется e или E.

Точка/запятая в выводе управляется локалью, число знаков в выводе управляется заданием precision в формате:

printf("%2.2f", 2) напечатает 2.00