xref: /original-bsd/lib/libc/stdlib/strtod.3 (revision f43fc9d7)
Copyright (c) 1990 The Regents of the University of California.
All rights reserved.

%sccs.include.redist.man%

@(#)strtod.3 5.1 (Berkeley) 05/16/90

STRTOD 3 ""
C 7
NAME
strtod - convert ASCII string to double
SYNOPSIS
#include <stdlib.h>

double
strtod(const char *nptr, char **endptr);
DESCRIPTION
The strtod function converts the initial portion of the string pointed to by nptr to double representation.

The expected form of the string is an optional plus (``+'') or minus sign (``-''), followed by a sequence of digits optionally containing a decimal-point character, optionally followed by an exponent. An exponent consists of an ``E'' or ``e'', followed by an optional plus or minus sign, followed by a sequence of digits.

Leading white-space characters in the string (as defined by the isspace (3) function) are skipped.

The strtod function returns the converted value, if any.

If endptr is not NULL, a pointer to the character after the last character 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 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.

"SEE ALSO"
atof(3), atoi(3), atol(3), strtol(3), strtoul(3)
STANDARDS
Strtod conforms to ANSI X3.159-1989 (``ANSI C'').
BUGS
This manual page represents intent instead of actual practice. The strtod (3) function is not currently available.