Hallo,
ich muss mir mit C einige sagen ganz genau berechnen lassen. Und habe nun gelesen, dass long double (Lf) nochmal genauer ist als double (lf).
Stimmt das und woran liegt das? Braucht man dann mehr Reichenleistung bzw. Speicherplatz?
danke
Hallo,
ich muss mir mit C einige sagen ganz genau berechnen lassen. Und habe nun gelesen, dass long double (Lf) nochmal genauer ist als double (lf).
Stimmt das und woran liegt das? Braucht man dann mehr Reichenleistung bzw. Speicherplatz?
danke
Hallo,
long double ist ein datentyp mit mehr bit als double.
Daher ist die anzahl der Zeichen auch höhere -> genauer.
Ja du brauchst mehr rechenleistung, um alles
gleichschnell berechnen zu können. Aber bei den meisten
Anwendungen merkt man den Unterschied nicht.
grüße
Aus der windows.h header gibts auch noch ULONG (unsigned long)…
Ich verarbeite damit eine 32Bit Zahl.
Hallo Fragewurm,
ich muss mir mit C einige sagen ganz genau berechnen lassen.
Und habe nun gelesen, dass long double (Lf) nochmal genauer
ist als double (lf).
Genau bezogen auf was?
Stellenzahl oder fortgesetzte Rechenfehler?
Die FPU beim 80x86 kann übrigens auch BCD. Manche Compiler unterstützen dies.
Was die Rechengenauigkeit angeht, macht der C-Standard übrigens keine Vorgaben, da musst du in der Implementierungsbeschreibung des Compilers nachlesen.
MfG Peter(TOO)
Hi Peter,
Die FPU beim 80x86 kann übrigens auch BCD. Manche Compiler
unterstützen dies.
richtig ist nur, dass die FPUs BCD Zahlen laden können und ein Ergebnis als BCD abspeichern können, beides in einem vorgegebenen, limitierten Wertebereich. Es ist nicht richtig, und das suggerierst du hier, dass die FPUs in BCD rechnen.
Gruss
norsemanna
soweit mir bekannt ist das so:
Datentyp Speicherplatz
float 32bit
double 64bit
long double 80bit
je mehr Speicherplatz fuer die Gleitkommazahl zur Verfuegung steht, desto genauer ist im Prinzip die Berechnung.
Falls du etwas fuer supergenaue Berechnung benoetigst, kannst du dir die MPFR Bibliothek ansehen.
Ich verwende diese unter Win32 mit Visual C++ 2008 und unter Linux.
Funktioniert perfekt und die Genauigkeit der Berechnung ist beliebig (nur begrenzt durch den zur Verfuegung stehenden Speicherplatz)
Smuwasa