turbo programacion notacion cientifica c++ math type-conversion scientific-notation

programacion - Cadena en notación científica C++ a doble conversión



notacion cientifica en turbo c (2)

Tengo una base de datos llena con dobles como la siguiente:

1.60000000000000000000000000000000000e+01

¿Alguien sabe cómo convertir un número así a un doble en C ++?

¿Hay una manera "estándar" de hacer este tipo de cosas? ¿O tengo que rodar mi propia función?

En este momento estoy haciendo algo como esto:

#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; }

¡Gracias!


¿Algo como esto? Esta sería la forma de hacerlo "C ++" ...

#include <sstream> using namespace std; // ... string s = "1.60000000000000000000000000000000000e+01"; istringstream os(s); double d; os >> d; cout << d << endl;

Imprime 16.


Desea la función c estándar atof ([A] SCII a [F] loat, pero en realidad usa dobles en lugar de flotantes).