WCSTOL(3)

NAME
2.41 `wcstol'--wide string to long

SYNOPSIS
     #include <wchar.h>
     long wcstol(const wchar_t *S, wchar_t **PTR,int BASE);
     long _wcstol_r(void *REENT,
         const wchar_t *S, wchar_t **PTR,int BASE);

DESCRIPTION
The function `wcstol' converts the wide string `*S' to a `long'. First, it breaks down the string into three parts: leading whitespace, which is ignored; a subject string consisting of characters resembling an integer in the radix specified by BASE; and a trailing portion consisting of zero or more unparseable characters, and always including the terminating null character. Then, it attempts to convert the subject string into a `long' and returns the result.
   If the value of BASE is 0, the subject string is expected to look like a normal C integer constant: an optional sign, a possible ``0x'' indicating a hexadecimal base, and a number. If BASE is between 2 and 36, the expected form of the subject is a sequence of letters and digits representing an integer in the radix specified by BASE, with an optional plus or minus sign. The letters `a'-`z' (or, equivalently, `A'-`Z') are used to signify values from 10 to 35; only letters whose ascribed values are less than BASE are permitted. If BASE is 16, a leading `0x' is permitted.
   The subject sequence is the longest initial sequence of the input string that has the expected form, starting with the first non-whitespace character. If the string is empty or consists entirely of whitespace, or if the first non-whitespace character is not a permissible letter or digit, the subject string is empty.
   If the subject string is acceptable, and the value of BASE is zero, `wcstol' attempts to determine the radix from the input string. A string with a leading `0x' is treated as a hexadecimal value; a string with a leading 0 and no `x' is treated as octal; all other strings are treated as decimal. If BASE is between 2 and 36, it is used as the conversion radix, as described above. If the subject string begins with a minus sign, the value is negated. Finally, a pointer to the first character past the converted subject string is stored in PTR, if PTR is not `NULL'.
   If the subject string is empty (or not in acceptable form), no conversion is performed and the value of S is stored in PTR (if PTR is not `NULL').
   The alternate function `_wcstol_r' is a reentrant version. The extra argument REENT is a pointer to a reentrancy structure.

RETURNS
`wcstol' returns the converted value, if any. If no conversion was made, 0 is returned.
   `wcstol' returns `LONG_MAX' or `LONG_MIN' if the magnitude of the converted value is too large, and sets `errno' to `ERANGE'.

PORTABILITY
`wcstol' is ANSI.
   No supporting OS subroutines are required.

SEE ALSO
wcstol is part of the library. The full documentation for is maintained as a Texinfo manual. If info and are properly installed at your site, the command

    info

will give you access to the complete manual.