Cadeia em notação científica C ++ para duplicar conversão
Eu tenho um banco de dados preenchido com duplas como o seguinte:
1.60000000000000000000000000000000000e+01
Alguém sabe como converter um número assim para um duplo em C ++?
Existe uma maneira "padrão" de fazer esse tipo de coisa? Ou eu tenho que rolar minha própria função?
Agora eu estou fazendo assim:
#include <string>
#include <sstream>
int main() {
std::string s("1.60000000000000000000000000000000000e+01");
std::istringstream iss(s);
double d;
iss >> d;
d += 10.303030;
std::cout << d << std::endl;
}
Obrigado!