Я ищу, чтобы удалить завершающие нули из двойной переменной и присвоить результат обратно двойной переменной.
Обратите внимание, что
Вход: двойной (например, 100.250 или 100.1010 или 100.375)
Выход: двойной (100,25, 100,101, 100,375)
например
double Price = 100.250;
double convert = TrimZeros(100.250);
// convert = 100.25
например
double Price = 100.250;
ostringstream osPrice;
osPrice << fixed << Price;
string cPrice = TrimString(osPrice.str()); // my function to trim trailing zero of string
//cPrice = "100.25"
// Now When I try to convert cPrice back to double, it adds extra zeros i.e. 100.250000
Я в порядке с чем угодно, то есть
— Прямая функция, чтобы обрезать завершающие нули двойного и присвоить остаток обратно двойной переменной.
ИЛИ ЖЕ
Пожалуйста, помогите.
Типы как double
держать значения, а не представления. 100
, 100.0
, а также one hundred
а также 10x10
все разные представления для одного и того же значения. То, что вы пытаетесь сделать, это ошибка категории, которая не имеет никакого смысла.
Это все равно, что спросить кого-то, у кого десять машин, может ли он иметь десять машин на базе 16.
// Now When I try to convert cPrice back to double, it adds extra zeros i.e. 100.250000
Покажите, как вы это определили. Потому что это невозможно. Значение будет сто одна четверть. Вы можете представлять это любым способом, который вы хотите для своих собственных целей.
Когда вы делаете int i = 2;
это значение в i
в базе десять? Или это бинарный? Или это римскими цифрами? Это не что-то из этого. Это число два. Количество рук у вас есть.
Других решений пока нет …