wcstod(3C) SDK R4.11 wcstod(3C)
NAME
wcstod, wcstof, wcstold - convert wide string to floating point value
SYNOPSIS
#include <wchar.h>
double wcstod(const wchart *nptr, wchart **endptr);
float wcstof(const wchart *nptr, wchart **endptr);
long double wcstold(const wchart *nptr, wchart **endptr);
DESCRIPTION
wcstod returns, as a double-precision floating-point number, the wide
character string pointed to by nptr. wcstof returns, as a single-
precision floating-point number, the wide character string pointed to
by nptr. wcstold returns, as a long double-precision floating-point
number, the wide character string pointed to by nptr. Scanning
occurs up to the first wide character that is unrecognized. The
function recognizes an optional string that is composed of "white
space" wide characters as defined by the iswspace function. The
string is then followed by an optional sign then a sequence of digits
optionally containing a decimal point character, followed by an
exponential part (e or E) then another optional sign with an integer
following it.
Also, instead of the regular decimal digit sequence, the string can
be a hexadecimal floating value, an infinity, or a NaN. A
hexadecimal floating value consists of 0x or OX followed by a
sequence of hexadecimal digits optionally containing a decimal point
character, followed by a binary exponent part p or P then an optional
sign with an integer following it. The exponent part must be present
if no decimal point character is present. An infinity is specified
by the string inf or infinity case insensitive. A NaN is specified
by nan case insensitive, followed by an optional sequence of zero or
more alphanumeric or underscore characters between a pair of
parenthesis. If the value of endptr is not null, a pointer to the
wide character terminating the scan is returned in the location
pointed to by endptr.
Return Values
The function returns the value produced after the conversion process.
If the function has not been performed then zero is returned and
errno may be set to EINVAL.
If a correct value causes overflow, ±HUGEVAL is returned, depending
on the sign of the value, and errno is set to ERANGE.
If the value produced is correct but causes underflow, then zero will
be returned with errno being set to ERANGE.
Errors
In the following conditions, these functions may fail and set errno
to:
ERANGE The value produced after the conversion process would
cause either an overflow or underflow.
EINVAL No conversion process could be carried out.
USAGE
Zero and ±HUGEVAL can be returned as a correct value after the
conversion process. However, they can also be returned on error. To
check for an error condition, zero should be assigned to errno
followed by a call to one of these functions
and then a check on errno. If the value of errno is non-zero it can
be assumed that an error has occurred.
REFERENCES
localeconv(3C), scanf(3S), setlocale(3C), wcstol(3C)
Licensed material--property of copyright holder(s)