handling T.min the right way
Bill Baxter
dnewsgroup at billbaxter.com
Tue Mar 20 23:10:29 PDT 2007
Bill Baxter wrote:
> James Dennett wrote:
>> Walter Bright wrote:
>>> 0ffh wrote:
>>>> Don Clugston wrote:
>>>>> completely different. (For example, I don't know why x++ is legal for
>>>>> floating point types; I think it's just a newbie trap; you have no
>>>>> guarantee that x++ is different to x).
>>>> Nope, not at all.
>>>> Standard C defines that after "x++" x is incremented by one, exactly -
>>>> *even for fp types* !
>>> For floating point types, if x happens to be +-infinity then x+1==x.
>>
>> Or, most likely, even if x happens to be 1E100. I've not
>> had the pleasure of working on hardware which supported
>> floating point accurate enough to distinguish 1E100 from
>> 1+1E100.
>>
>> -- James
>>
>
> The cutoff is basically 2^{mantissa bits+1}.
> With floats: 2^23 + 1 == 2^23
doh! typo -- float has 23 mantissa bits so that should be 24.
> With double: 2^53 + 1 == 2^53
>
> So it happens for values much less than 1e100. More like 1e7 and 1e16.
--bb
More information about the Digitalmars-d
mailing list