All,
I am having a problem with converting a text representation of an exponential
value into a double. The conversion works fine on an m500, but not on any of the
Tungstens (well, T and E anyway). After converting the values, I check them against
each other. Two values are the range ends and the other value is the one the user
typed in. The problem is, it comes back saying the value is out of range, even when
it isn't. The range check works just fine for any number other than an exponential.
And yet, as I said the exponential conversion works on the old m500. I am using GCC
and the Palm OS 5.3r SDK, so I have to use FlpBufferAToF. I have checked this and I
know the routine below (a fairly common one) is correct. Has anyone seen this? Does
anyone have any answers? I am baffled.
double my_atof(const char* pc)
{
FlpCompDouble fcd;
FlpBufferAToF(&fcd.fd, pc);
return fcd.d;
}
Robin E. Allen
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/support/forums/