strtof

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
STRTOD(3)		      Library functions			    STRTOD(3)



NAME
       strtod,	strtof, strtold - convert ASCII string to floating point num-
       ber

SYNOPSIS
       #include <stdlib.h>

       double strtod(const char *nptr, char **endptr);
       float strtof(const char *nptr, char **endptr);
       long double strtold(const char *nptr, char **endptr);

DESCRIPTION
       The strtod, strtof, and strtold functions convert the initial  portion
       of  the	string	pointed	 to by nptr to double, float, and long double
       representation, respectively.

       The expected form of the (initial portion of the) string	 is  optional
       leading	white  space  as  recognized  by isspace(3), an optional plus
       (‘‘+’’) or minus sign (‘‘-’’) and then either (i) a decimal number, or
       (ii) a hexadecimal number, or (iii) an infinity, or (iv) a NAN (not-a-
       number).

       A decimal number consists of a nonempty	sequence  of  decimal  digits
       possibly	 containing  a	radix character (decimal point, locale depen-
       dent, usually ‘‘.’’), optionally followed by a  decimal	exponent.   A
       decimal	exponent  consists  of	an  ‘‘E’’  or  ‘‘e’’,  followed by an
       optional plus or minus sign, followed by a non-empty sequence of deci-
       mal digits, and indicates multiplication by a power of 10.

       A  hexadecimal  number  consists	 of  a ‘‘0x’’ or ‘‘0X’’ followed by a
       nonempty sequence of hexadecimal digits possibly	 containing  a	radix
       character, optionally followed by a binary exponent. A binary exponent
       consists of a ‘‘P’’ or ‘‘p’’, followed by an optional  plus  or	minus
       sign,  followed	by  a non-empty sequence of decimal digits, and indi-
       cates multiplication by a power of 2.  At least one of radix character
       and binary exponent must be present.

       An infinity is either ‘‘INF’’ or ‘‘INFINITY’’, disregarding case.

       A  NAN  is  ‘‘NAN’’  (disregarding case) optionally followed by ‘(’, a
       sequence of characters, followed by ’)’.	 The character string  speci-
       fies in an implementation-dependent way the type of NAN.


RETURN VALUE
       These functions return the converted value, if any.

       If endptr is not NULL, a pointer to the character after the last char-
       acter used in the conversion is stored in the location  referenced  by
       endptr.

       If  no conversion is performed, zero is returned and the value of nptr
       is stored in the location referenced by endptr.

       If the correct value would cause	 overflow,  plus  or  minus  HUGE_VAL
       (HUGE_VALF,  HUGE_VALL)	is  returned  (according  to  the sign of the
       value), and ERANGE is stored in errno.  If  the	correct	 value	would
       cause underflow, zero is returned and ERANGE is stored in errno.

ERRORS
       ERANGE Overflow or underflow occurred.

CONFORMING TO
       ANSI C describes strtod, C99 describes the other two functions.

SEE ALSO
       atof(3), atoi(3), atol(3), strtol(3), strtoul(3)



Linux				  2001-06-07			    STRTOD(3)