Strtol – Zilog EZ80F916 User Manual
Page 392
UM014423-0607
C Standard Library
ZiLOG Developer Studio II
eZ80Acclaim!
®
User Manual
372
t = strtok(NULL,"#,"); /* t points to the token "c" */
t = strtok(NULL,"?"); /* t is a null pointer */
strtol
Converts the string pointed to by nptr to long int representation. The function recognizes
an optional leading sequence of white-space characters (as specified by the isspace func-
tion), then an optional plus or minus sign, then a sequence of digits and letters, then an
optional integer suffix.
The first inappropriate character ends the conversion. If endptr is not a null pointer, a
pointer to that character is stored in the object endptr points to; if an inappropriate charac-
ter occurs before the first digit or recognized letter, the value of nptr is stored.
If the value of base is 0, the sequence of characters from the first digit to the character
before the first inappropriate character is interpreted as an integer constant according to
the rules of this section. If a minus sign appears immediately before the first digit, the
value resulting from the conversion is negated.
If the value of base is between 2 and 36, it is used as the base for conversion. Letters from
a (or A) through z (or Z) are ascribed the values 10 to 35; a letter whose value is greater
than or equal to the value of base ends the conversion. Leading zeros after the optional
sign are ignored, and leading 0x or 0X is ignored if the value of base is 16. If a minus sign
appears immediately before the first digit or letter, the value resulting from the conversion
is negated.
Synopsis
#include
long strtol(char *nptr, char **endptr, int base);
Returns
The converted value, or zero if an inappropriate character occurs before the first digit or
recognized letter. If the correct value would cause overflow, LONG_MAX or
LONG_MIN is returned (according to the sign of the value), and the macro
errno
acquires the value ERANGE.
Example
char *ptr;
char s[]="12345";
long res;
res=strtol(s,&ptr,10);