c++ - son - tabla de tipos de datos en c
¿Alguien sabe cómo averiguar la precisión del long double
en una plataforma específica? Parece que pierdo precisión después de 17 dígitos decimales, que es lo mismo que cuando uso double
. Esperaría obtener más, ya que el double
está representado con 8 bytes en mi plataforma, mientras que el long double
es de 12 bytes.
Antes de preguntar, esto es para Project Euler, entonces sí , necesito más de 17 dígitos. :)
EDITAR: Gracias por las respuestas rápidas. Acabo de confirmar que solo puedo obtener 18 dígitos decimales utilizando el long double
en mi sistema.
Puede averiguarlo con std::numeric_limits
:
#include <iostream> // std::cout
#include <limits> // std::numeric_limits
int main(){
std::cout << std::numeric_limits<long double>::digits10 << std::endl;
}