Caution: This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs.

wcstol(), wcstoll()

Convert a wide-character string into a long integer

Synopsis:

#include <stdlib.h>

long wcstol( const wchar_t * ptr,
             wchar_t ** endptr,
             int base );

long long wcstoll( const wchar_t * ptr,
                   wchar_t ** endptr,
                   int base );

Arguments:

ptr
A pointer to the string to parse.
endptr
If this argument isn't NULL, the function stores in it a pointer to the first unrecognized character found in the string.
base
The base of the number being parsed:

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The wcstol() function converts the string pointed to by ptr into a long; wcstoll() converts the string into a long long.

These functions recognize strings that contain the following:

The conversion ends at the first unrecognized wide character. If endptr isn't NULL, a pointer to the unrecognized wide character is stored in the object endptr points to.

Returns:

The converted value.

If the correct value causes an overflow, LONG_MAX|LONGLONG_MAX or LONG_MIN|LONGLONG_MIN is returned according to the sign, and errno is set to ERANGE. If base is out of range, zero is returned and errno is set to EDOM.

Errors:

ERANGE
The value is not representable
EINVAL
The value for base is not supported or no conversion could be performed.

Classification:

ANSI, POSIX 1003.1

Safety:
Cancellation point No
Interrupt handler Yes
Signal handler Yes
Thread Yes

See also:

errno

"String manipulation functions" and "Wide-character functions" in the summary of functions chapter.