Выведите две цифры после десятичного разделителя - PullRequest
1 голос
/ 23 июня 2010

При использовании fprintf какая строка форматирования выводит две цифры после десятичного разделителя?

float number = 3.0;
fprintf(pFile, "%10.02f", number); 

Это всегда выводит 3 вместо 3,00

Как мне заполнить цифры после десятичного разделителя нулями? Я хочу, чтобы 3.00 было записано в выходной файл.

Ответы [ 2 ]

5 голосов
/ 23 июня 2010

Вместо этого используйте %.2f в качестве спецификатора формата или, если вы хотите сначала 10 пробелов %10.2f

0 голосов
/ 23 июня 2010

Я подозреваю, что вы хотите представить суммы в валюте.Пожалуйста, не используйте поплавки для этой цели.Десятичные числа не представлены точно с плавающей точкой, это может привести к ошибкам округления, которые вам не нужны.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...