low_str_strtol
Convert strings to a long-integer value.
l_long low_str_strtol (
cl_text nptr,
l_text *endptr,
l_int base
);
Return Value
low_str_strtol returns the value represented in the string @nptr, except when the representation would
cause an overflow, in which case it returns LONG_MAX or LONG_MIN. low_str_strtol returns 0 if
no conversion can be performed.
Parameters
nptr
Null-terminated string to convert
endptr
Pointer to character that stops scan
base
Number base to use
Remarks
The low_str_strtol function converts @nptr to a l_long. low_str_strtol stops reading the string @nptr at the
first character it cannot recognize as part of a number. This may be the terminating null character, or it
may be the first numeric character greater than or equal to base.
If @endptr is not NULL, a pointer to the character that stopped the scan is stored at the location pointed
to by @endptr. If no conversion can be performed (no valid digits were found or an invalid base was
specified), the value of @nptr is stored at the location pointed to by @endptr.
low_str_strtol expects @nptr to point to a string of the following form:
[whitespace] [{+ | }] [0 [{ x | X }]] [digits]
A whitespace may consist of space and tab characters, which are ignored; digits are one or more decimal
digits. The first character that does not fit this form stops the scan. If base is between 2 and 36, then it
is used as the base of the number. If base is 0, the initial characters of the string pointed to by @nptr are
used to determine the base. If the first character is 0 and the second character is not 'x' or 'X', the string
is interpreted as an octal integer; otherwise, it is interpreted as a decimal number. If the first character is
'0' and the second character is 'x' or 'X', the string is interpreted as a hexadecimal integer. If the first
character is '1' through '9', the string is interpreted as a decimal integer. The letters 'a' through
'z' (or 'A' through 'Z') are assigned the values 10 through 35; only letters whose assigned values are less
than base are permitted.