STRTOD(3) | Linux Programmer's Manual | STRTOD(3) |
NAME
strtod, strtof, strtold - convert ASCII string to floating-point numberSYNOPSIS
#include <stdlib.h>Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
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.A decimal number consists of a nonempty sequence of decimal digits possibly containing a radix character (decimal point, locale-dependent, 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 nonempty sequence of decimal 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 nonempty sequence of decimal digits, and indicates 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 specifies in an implementation-dependent way the type of NAN.
RETURN VALUE
These functions return the converted value, if any.ERRORS
- ERANGE
- Overflow or underflow occurred.
CONFORMING TO
C89 describes strtod(), C99 describes the other two functions.NOTES
Since 0 can legitimately be returned on both success and failure, the calling program should set errno to 0 before the call, and then determine if an error occurred by checking whether errno has a nonzero value after the call.EXAMPLE
See the example on the strtol(3) manual page; the use of the functions described in this manual page is similar.SEE ALSO
atof(3), atoi(3), atol(3), strtol(3), strtoul(3)COLOPHON
This page is part of release 3.53 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.2010-09-20 | Linux |