Avatar billede pindemad Nybegynder
30. juli 2002 - 05:27 Der er 5 kommentarer og
1 løsning

Bedre præcision end double i visual c++ 6.0

Jeg skal bruge en floating point type, der kan antage større floating point værdi end almindelig double type kan hos MS.
I UNIX er det lige til (long double), men i MS' definition er denne implementeret som almindelig double.
Avatar billede jpk Nybegynder
30. juli 2002 - 08:49 #1
Det findes ikke en sådan standardtype under Windows, du må selv implementere den (eller finde en implementation...)
Avatar billede kamikaze Nybegynder
30. juli 2002 - 10:57 #2
Windows: En long double har samme størrelse som en double (ligesom en long int har samme størrelse som en int)
UNIX: En long double er dobbelt så stor som en double, men samme størrelse som en windows-long double.
Avatar billede kamikaze Nybegynder
30. juli 2002 - 10:58 #3
Ovenstående gælder for Tru64-UNIX, AIX og Windows NT4, 2K, XP
Avatar billede pindemad Nybegynder
30. juli 2002 - 16:04 #4
jeres svar er da rigtige men indeholder intet nyt
Avatar billede soepro Nybegynder
02. august 2002 - 14:06 #5
Større præcision af floats end hvad der kan være i max 2 * registerstørrelsen på din CPU (dvs. under normale omstændigheder max 64 bits, dvs. 8 bytes) findes ikke. Nogle compileren har dog allerede implementeret andre typer som kan.

Under C++ Builder findes typen BCD (Binary coded decimal), eller er der ikke noget andet alternati end at lave en type selv, f.eks. på basis af to long integers (en til integer-delen og et til decimalerne), og overloade det normale regne operationer for dem.
Avatar billede reficul Nybegynder
26. august 2002 - 02:30 #6
Jeg er bange for at der skal noget ekstra kode til at frembringe dette! Din processor arbejder nu altså også kun med 80 bits (10 bytes), så hvis du vil have floating-point med større precision, så ryger hastigheden gevaldigt ned!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester