glenda.party
term% ls -F
term% pwd
$home/manuals/9front/2/atof
term% cat index.txt
ATOF(2)                       System Calls Manual                      ATOF(2)



NAME
       atof,  atoi,  atol,  atoll, charstod, strtod, strtol, strtoll, strtoul,
       strtoull - convert text to numbers

SYNOPSIS
       #include <u.h>
       #include <libc.h>

       double atof(char *nptr)

       int    atoi(char *nptr)

       long   atol(char *nptr)

       vlong  atoll(char *nptr)

       double charstod(int (*f)(void *), void *a)

       double strtod(char *nptr, char **rptr)

       long   strtol(char *nptr, char **rptr, int base)

       vlong  strtoll(char *nptr, char **rptr, int base)

       ulong  strtoul(char *nptr, char **rptr, int base)

       uvlong strtoull(char *nptr, char **rptr, int base)

DESCRIPTION
       Atof, atoi, atol, and atoll convert a string  pointed  to  by  nptr  to
       floating,  integer,  long integer, and long long integer (vlong) repre‐
       sentation respectively.  The  first  unrecognized  character  ends  the
       string.   Leading C escapes are understood, as in strtol with base zero
       (described below).

       Atof recognizes an optional string of tabs and spaces, then an optional
       sign,  then  a  string of digits optionally containing a decimal point,
       then an optional or followed by an optionally signed integer.

       Atoi and atol recognize an optional string of tabs and spaces, then  an
       optional sign, then a string of decimal digits.

       Strtod, strtol, strtoll, strtoul, and strtoull behave similarly to atof
       and atol and, if rptr is not zero, set *rptr  to  point  to  the  input
       character immediately after the string converted.

       Strtol,  strtoll,  strtoul,  and strtoull interpret the digit string in
       the specified base, from 2 to 36, each digit being less than the  base.
       Digits  with  value  over 9 are represented by letters, a-z or A-Z.  If
       base is 0, the input is interpreted as  an  integral  constant  in  the
       style  of  C  (with  no suffixed type indicators): numbers are octal if
       they begin with hexadecimal if they begin with or otherwise decimal.

       Charstod interprets floating point numbers in the manner of  atof,  but
       gets successive characters by calling (*f)(a).  The last call to f ter‐
       minates the scan, so it must have returned a character that  is  not  a
       legal continuation of a number.  Therefore, it may be necessary to back
       up the input stream one character after calling charstod.

SOURCE
       /sys/src/libc/port

SEE ALSO
       fscanf(2)

DIAGNOSTICS
       Zero is returned if the beginning of the input  string  is  not  inter‐
       pretable as a number; even in this case, rptr will be updated.

BUGS
       Atoi, atol, and atoll accept octal and hexadecimal numbers in the style
       of C, contrary to the ANSI specification.



                                                                       ATOF(2)