Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ strtol(3C) — Amiga System V Release 4 Version 2.03

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ctype(3C)

scanf(3S)

strtod(3C)



strtol(3C)           COMPATIBILITY FUNCTIONS           strtol(3C)



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'' hexa-
     decimal 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,
     LONGMAX  or  LONGMIN 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, ULONGMAX
     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).




          Last change: C Programming Language Utilities         1





strtol(3C)           COMPATIBILITY FUNCTIONS           strtol(3C)



     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  LONGMAX  as
     valid input.  Use strtoul instead.










































          Last change: C Programming Language Utilities         2



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