2
"123.546123"
に等しいダブルストリングがあり、atof
でダブルに変換すると、123.546
しか得られません。これを修正するにはどうすればよいですか?デフォルトでは6の精度で精度の損失
#include <iostream>
int main(){
std::string a = "123.546123";
double b = atof(a.c_str());
std::cout << a << std::endl;
std::cout << b << std::endl;
return EXIT_SUCCESS;
}
を例えばをその精度を高めるためにあなたが精度を失うことはありません、それはあなたが期待少ないしている一定の精度で、デフォルトでは二重の値はただのstd :: coutのプリントアウトです。 –