Handling big FP numbers
Murilo
murilomiranda92 at hotmail.com
Sat Feb 9 03:00:01 UTC 2019
On Saturday, 9 February 2019 at 02:54:18 UTC, Adam D. Ruppe wrote:
> On Saturday, 9 February 2019 at 02:46:52 UTC, Murilo wrote:
>> But I used the type double in D which is supposed to be only
>> 64 bits long and not 80 bits long, the type real is the one
>> which is supposed to be 80 bits long. Right?
>
> Right, BUT the compile time stuff is done before that.
>
> double a = 1.0 * 2.0;
>
> The 1.0*2.0 is done as real inside the compiler, then the
> *result* is assigned to the 64 bit double.
>
> Whereas in a C++ compiler, that would be done 64 bit
> throughout. So the different intermediate rounding can give a
> different result.
>
> (The `real` thing in D was a massive mistake. It is slow and
> adds nothing but confusion.)
ahhh okay, thanks for clearing it up. is there a way to bypass
that?
More information about the Digitalmars-d-learn
mailing list