From: Paul Brannan Date: 2002-01-11T06:55:50+09:00 Subject: Re: Hexadecimal float (Re: regexen for strings that can be converted to numbers) On Fri, Jan 11, 2002 at 02:59:41AM +0900, nobu.nokada@softhome.net wrote: > strtod() on Linux (or glibc) seems to accept radix prefix. > Is this Linux specific? Also intended? From the C standard, section 7.20.1.3: 3 The expected form of the subject sequence is an optional plus or minus sign, then one of the following: - a nonempty sequence of decimal digits optionally containing a decimal-point character, then an optional exponent part as defined in 6.4.4.2; - a 0x or 0X, then a nonempty sequence of hexadecimal digits optionally containing a decimal-point character, then an optional binary exponent part as defined in 6.4.4.2; - one of INF or INFINITY, ignoring case - one of NAN or NAN(n-char-sequence opt ), ignoring case in the NAN part, where: n-char-sequence: digit nondigit n-char-sequence digit n-char-sequence nondigit The subject sequence is defined as the longest initial subsequence of the input string, starting with the first non-white-space character, that is of the expected form. The subject sequence contains no characters if the input string is not of the expected form.