Was ist die Genauigkeit der long double in C ++?
-
20-08-2019 - |
Frage
Wer weiß, wie die Präzision der long double
auf einer bestimmten Plattform, um herauszufinden? Ich zu sein scheinen Präzision nach 17 Dezimalstellen zu verlieren, die die gleiche ist, wie wenn ich double
nur verwenden. Ich würde erwarten, mehr zu bekommen, da double
mit 8 Byte auf meiner Plattform dargestellt wird, während long double
12 Bytes ist.
Bevor Sie fragen, dann ist dies für Project Euler, also ja I Sie mehr als 17 Ziffern müssen. :)
EDIT: Vielen Dank für die schnellen Antworten. Ich bestätigte nur, dass ich nur mit long double
auf meinem System 18 Dezimalstellen erhalten.
Lösung
Sie können mit std::numeric_limits
herausfinden:
#include <iostream> // std::cout
#include <limits> // std::numeric_limits
int main(){
std::cout << std::numeric_limits<long double>::digits10 << std::endl;
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow