Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

Re^4: Question on simple arithmetic using perl

by zwon (Abbot)
on Sep 29, 2011 at 02:20 UTC ( #928456=note: print w/replies, xml ) Need Help??

in reply to Re^3: Question on simple arithmetic using perl
in thread Question on simple arithmetic using perl

Note that perl is actually using long and double. On 32bit double has more significant digits than long.

  • Comment on Re^4: Question on simple arithmetic using perl

Replies are listed 'Best First'.
Re^5: Question on simple arithmetic using perl
by Marshall (Abbot) on Sep 29, 2011 at 03:29 UTC
    Yes, if you mean that a 64 bit floating point number has more significant bits in the mantissa than a 32 bit integer does, I agree. I leave looking up the definition of ANSI C long and double to the interested readers.

    Update: I looked up what Microsoft did for storage in C. "int" and "long" are both 32 bits (other folks will assign 64 bits to a "long"). A MS "float" is 32 bits and MS "double" is 64 bits with 52 bit mantissa.

    ANSI C Summary says: that an int will have at least 4 significant decimal digits and a long will have at least 9 significant decimal digits (see link for exact ANSI spec'd ranges). An int can be the same size as a long (bigger than minimum is ok).

    A float has to have 6 decimal digits of precision and a double has a minimum of 10 decimal digits of precision. So a double is guaranteed to have at least one more decimal digit of precision than a long (10 vs 9).

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://928456]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (9)
As of 2017-12-18 12:58 GMT
Find Nodes?
    Voting Booth?
    What programming language do you hate the most?

    Results (485 votes). Check out past polls.