将lexical cast string提升一倍

Nos*_*mus 5 c++ atof lexical-cast

我正面临转换问题,我希望得到您的帮助.我正在使用gcc4编译器,我很受限制地使用gcc4.

我想将std :: string转换为double.

std::string aQuantity = aRate.getQuantity();
std::string aAmount = aRate.getAmount(); 

// aAmount = "22.05"

double dQuantity = boost::lexical_cast<double>(aQuantity);
double dAmount = boost::lexical_cast<double> (aAmount);

// dAmount =  22.050000000000001
Run Code Online (Sandbox Code Playgroud)

顺便说一句,我也试过atof,我仍然有同样的问题.有没有办法使用istringstreamsetprecission(2)由得到显示正确的值aAmount