Очистить конечные 0 на двойном?

У меня есть двойное число, которое имеет значение около 0,50000, но я просто хочу 0,5. Есть ли способ избавиться от этих завершающих нулей? :)


person tarnfeld    schedule 14.04.2010    source источник


Ответы (2)


операторы стандартного формата c.

NSLog(@" %.2f", .5000)
person Brian Postow    schedule 14.04.2010

In C,

printf("%g", 0.5000);

Примечание: (из руководства GNU libc)

Преобразования %g и %G выводят аргумент в стиле %e или %E (соответственно). если показатель степени будет меньше -4 или больше или равен точности; в противном случае они используют стиль «%f». Точность 0 принимается за 1. Нули в конце удаляются из дробной части результата, и символ десятичной точки появляется только в том случае, если за ним следует цифра.

person N 1.1    schedule 14.04.2010
comment
Он отлично работает, но дает экспоненциальную форму для больших чисел, и я этого не хочу. Любое решение для этого? - person Sneha; 27.05.2016