Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ atol(3C) — svr4 — mips UMIPS RISC/os 5.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ctype(3C)

scanf(3S)

strtod(3C)



STRTOL(3C-SVR4)     RISC/os Reference Manual      STRTOL(3C-SVR4)



NAME
     strtol, strtoul, atol, atoi - convert string to integer

SYNOPSIS
     #include <stdlib.h>

     long strtol (const char *str, char **ptr, int base);

     unsigned long strtoul (const char *str, char **ptr, int
     base);

     long atol (const char *str);

     int atoi (const char *str);

DESCRIPTION
     strtol returns as a long integer the value represented by
     the character string pointed to by str.  The string is
     scanned up to the first character inconsistent with the
     base.  Leading white-space characters [as defined by isspace
     in ctype(3C)] are ignored.

     If the value of ptr is not (char **)NULL, a pointer to the
     character terminating the scan is returned in the location
     pointed to by ptr.  If no integer can be formed, that loca-
     tion is set to str, and zero is returned.

     If base is positive (and not greater than 36), it is used as
     the base for conversion.  After an optional leading sign,
     leading zeros are ignored, and 0x or 0X is ignored if base
     is 16.

     If base is zero, the string itself determines the base as
     follows: After an optional leading sign a leading zero indi-
     cates octal conversion, and a leading 0x or 0X hexadecimal
     conversion.  Otherwise, decimal conversion is used.

     Truncation from long to int can, of course, take place upon
     assignment or by an explicit cast.

     If the value represented by str would cause overflow,
     LONG_MAX or LONG_MIN is returned (according to the sign of
     the value), and errno is set to the value, ERANGE.

     strtoul is similar to strtol except that strtoul returns as
     an unsigned long integer the value represented by str.  If
     the value represented by str would cause overflow, ULONG_MAX
     is returned, and errno is set to the value, ERANGE.

     Except for behavior on error, atol(str) is equivalent to:
     strtol(str, (char **)NULL, 10).




                        Printed 11/19/92                   Page 1





STRTOL(3C-SVR4)     RISC/os Reference Manual      STRTOL(3C-SVR4)



     Except for behavior on error, atoi(str) is equivalent to:
     (int) strtol(str, (char **)NULL, 10).

DIAGNOSTICS
     If strtol is given a base greater than 36, it returns 0 and
     sets errno to EINVAL.

SEE ALSO
     ctype(3C), scanf(3S), strtod(3C).

NOTES
     strtol no longer accepts values greater than LONG_MAX as
     valid input.  Use strtoul instead.










































 Page 2                 Printed 11/19/92



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026