|
Rob Kendrick wrote:
On Fri, 23 Jan 2009 02:25:46 +0800 KHMan <keinhong@gmail.com> wrote:The specification for strtod in IEEE Std 1003.1, 2004 says, among other things:I'm trying to work out what causes this, and if it's intentional,why it is desirable. So far, I've failed.* One of INF or INFINITY, ignoring caseBut MSVCRT is not entirely POSIX-compatible, so no big deal, we learn to live with its quirks.Actually, this isn't a POSIX requirement, it's a ANSI/ISO C requirement. (ISO/IEC 9899:1999 7.10.1.3.3).
I guess you can call msvcrt as deprecated, see the reasons why MinGW still uses it. There are a number of more recent C runtimes, but since the redistributable has a license and it is not guaranteed to be in a system, many FLOSS projects for instance will stick to msvcrt.
But surely we're talking about the output of printf() and friends, not the input accepted by strtod()?
Sorry for being unclear, in the Unix Spec V3, printf points to strtod for the details.
-- Cheers, khman KL, MY