二重変数から末尾のゼロを削除し、その結果を二重変数に戻すことを検討しています。C++:二重変数の小数部から末尾のゼロを削除する
私は(%gを有するのsnprintf、COUTかのprintfを使用して)プリントアウトして見ているわけではないC++ 98
- ことに注意してください。私は末尾のゼロを削除し、残りの部分をdouble変数に戻したいと考えています。
入力:ダブル(例えば100.250または100.1010または100.375)
出力:ダブル(100.25、100.101、100.375)
例えば
double Price = 100.250;
double convert = TrimZeros(100.250);
// convert = 100.25
- 私が変換しようとしましたストリングストリームに2倍し、そのストリングの末尾のゼロをトリムします。しかし、私はそれを必要な精度でトリミングした後に倍に戻すことはできません。
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
私は何も、即ち と元気です - 二重の後続ゼロをトリミングし、バックダブル変数に残りを割り当てる直接機能。
OR
- 、文字列に二重に変換した文字列からゼロをトリミングして倍増し、適切にそれをバックに変換。
助けてください。
Um ...実際にあなたが記述する方法で数字の数字を削除することはできません。文字列表現に末尾のゼロを入れたくない場合は、文字列が現れたら削除してください。 – InternetAussie
末尾のゼロは番号に影響しません。なぜそれらを削除するのですか? '1。 == 1.0 == 1.00 == 1.000 == ... '。 – NathanOliver
ここでのユースケースは何ですか? – CinCout