strtol(3p) - phpMan

Command: man perldoc info search(apropos)  


STRTOL(P)                                                            STRTOL(P)



NAME
       strtol, strtoll - convert a string to a long integer

SYNOPSIS
       #include <stdlib.h>

       long strtol(const char *restrict str, char **restrict endptr, int base);
       long long strtoll(const char *restrict str, char **restrict endptr,
              int base)


DESCRIPTION
       These  functions  shall convert the initial portion of the string pointed to by str
       to a type long and long long representation, respectively.  First,  they  decompose
       the input string into three parts:

        1. An initial, possibly empty, sequence of white-space characters (as specified by
           isspace())


        2. A subject sequence interpreted as an integer represented in some  radix  deter-
           mined by the value of base


        3. A  final string of one or more unrecognized characters, including the terminat-
           ing null byte of the input string.


       Then they shall attempt to convert the subject sequence to an integer,  and  return
       the result.

       If  the  value of base is 0, the expected form of the subject sequence is that of a
       decimal constant, octal constant, or hexadecimal constant, any of which may be pre-
       ceded  by  a  â€â€™+â€â€™ or â€â€™-â€â€™ sign. A decimal constant begins with a non-zero digit, and
       consists of a sequence of decimal digits. An octal constant consists of the  prefix
       â€â€™0â€â€™ optionally followed by a sequence of the digits â€â€™0â€â€™ to â€â€™7â€â€™ only.  A hexadecimal
       constant consists of the prefix 0x or 0X followed by a sequence of the decimal dig-
       its and letters â€â€™aâ€â€™ (or â€â€™Aâ€â€™ ) to â€â€™fâ€â€™ (or â€â€™Fâ€â€™ ) with values 10 to 15 respectively.

       If the value of base is between 2 and 36, the expected form of the subject sequence
       is a sequence of letters and digits representing an integer with the  radix  speci-
       fied  by  base,  optionally preceded by a â€â€™+â€â€™ or â€â€™-â€â€™ sign. The letters from â€â€™aâ€â€™ (or
       â€â€™Aâ€â€™ ) to â€â€™zâ€â€™ (or â€â€™Zâ€â€™ ) inclusive are ascribed the values 10  to  35;  only  letters
       whose  ascribed  values  are  less than that of base are permitted. If the value of
       base is 16, the characters 0x or 0X may optionally precede the sequence of  letters
       and digits, following the sign if present.

       The  subject  sequence  is  defined as the longest initial subsequence of the input
       string, starting with the first non-white-space character that is of  the  expected
       form. The subject sequence shall contain no characters if the input string is empty
       or consists entirely of white-space characters, or  if  the  first  non-white-space
       character is other than a sign or a permissible letter or digit.

       If  the  subject  sequence  has  the  expected form and the value of base is 0, the
       sequence of characters starting with the first digit shall  be  interpreted  as  an
       integer  constant.  If  the subject sequence has the expected form and the value of
       base is between 2 and 36, it shall be used as the base for conversion, ascribing to
       each  letter  its value as given above. If the subject sequence begins with a minus
       sign, the value resulting from the conversion shall be negated. A  pointer  to  the
       final  string  shall  be  stored  in the object pointed to by endptr, provided that
       endptr is not a null pointer.

       In other than the C    or  POSIX   locales,  other  implementation-defined  subject
       sequences may be accepted.

       If  the subject sequence is empty or does not have the expected form, no conversion
       is performed; the value of str is stored in the object pointed to by  endptr,  pro-
       vided that endptr is not a null pointer.

       The strtol() function shall not change the setting of errno if successful.

       Since  0,  {LONG_MIN} or {LLONG_MIN}, and {LONG_MAX} or {LLONG_MAX} are returned on
       error and are also valid returns on success, an application wishing  to  check  for
       error situations should set errno to 0, then call strtol() or strtoll(), then check
       errno.

RETURN VALUE
       Upon successful completion, these functions shall return the  converted  value,  if
       any.  If  no conversion could be performed, 0 shall be returned    and errno may be
       set to [EINVAL].

       If the correct value is outside the  range  of  representable  values,  {LONG_MIN},
       {LONG_MAX}, {LLONG_MIN}, or {LLONG_MAX} shall be returned (according to the sign of
       the value), and errno set to [ERANGE].

ERRORS
       These functions shall fail if:

       ERANGE The value to be returned is not representable.


       These functions may fail if:

       EINVAL The value of base is not supported.


       The following sections are informative.

EXAMPLES
       None.

APPLICATION USAGE
       None.

RATIONALE
       None.

FUTURE DIRECTIONS
       None.

SEE ALSO
       isalpha()   ,   scanf()   ,   strtod()   ,   the   Base   Definitions   volume   of
       IEEE Std 1003.1-2001, <stdlib.h>

COPYRIGHT
       Portions of this text are reprinted and reproduced in electronic form from IEEE Std
       1003.1, 2003 Edition, Standard for Information  Technology  --  Portable  Operating
       System Interface (POSIX), The Open Group Base Specifications Issue 6, Copyright (C)
       2001-2003 by the Institute of Electrical and Electronics  Engineers,  Inc  and  The
       Open  Group.  In the event of any discrepancy between this version and the original
       IEEE and The Open Group Standard, the original IEEE and The Open Group Standard  is
       the   referee   document.   The   original  Standard  can  be  obtained  online  at
       http://www.opengroup.org/unix/online.html .



POSIX                                2003                            STRTOL(P)

Generated by $Id: phpMan.php,v 4.55 2007/09/05 04:42:51 chedong Exp $ Author: Che Dong
On Apache/1.3.41 (Unix) PHP/5.2.5 mod_perl/1.30 mod_gzip/1.3.26.1a
Under GNU General Public License
2009-01-10 11:54 @38.103.63.58 CrawledBy CCBot/1.0 (+http://www.commoncrawl.org/bot.html)
Valid XHTML 1.0!Valid CSS!