LINUX.ORG.RU

Вопрос по форматированию вывода printf()


0

0

Всем добрый день!
Не подскажете, можно ли сформатировать вывод числа типа double в виде
0.123145D+01,
где важно что на первой позиции стоит 0 (а не первое значащие число),
а вместо E или e для показателя экспоненты используется D??
Можно ли сделать это в чистом C и если не printf то какой функцией?
Заранее спасибо.

★★

можна. Е на D сам поменяешь, это несложно (хе-хе ;))

anonymous
()

Да я так уже и понял, что без костылей не обойдёшься...
...
#include <math.h>
...

exponent1=abs(trunc(log10(exp_array[i].exponent)));
exponent2=exp_array[i].exponent/(pow(10,exponent1+1));
fprintf (hnd, "%10.7fD%0+3d", exponent2, (int)exponent1+1);

...

octy ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.