sprintf форматирование двойных значений

У меня есть одна специфическая проблема при преобразовании значений doubleв строку с использованием sprintf()в UNIX.

Например, у меня есть два значения.:

double a = 0.009984354523452;
double b = 0.01;

При преобразовании я использую:

sprintf(somestringvar, "Double value : %.15f \n", a);
sprintf(diffstringvar, "Double value : %.15f \n", b);

для преобразования в строку.

Моя проблема заключается в том, что для «a» значение печатается правильно, но для значения «b» 0 добавляются в конце. Пожалуйста, предоставьте мне какой-либо общий способ представления «a» и «b» как точных значений.

5
задан Randall Cook 26 April 2012 в 06:46
поделиться