Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | RSS feed

  1. #include <stdlib.h>
  2. #include <ctype.h>
  3.  
  4. long atol(const char *s)
  5. {
  6.         long n=0;
  7.         int neg=0;
  8.         while (isspace(*s)) s++;
  9.         switch (*s) {
  10.         case '-': neg=1;
  11.         case '+': s++;
  12.         }
  13.         /* Compute n as a negative number to avoid overflow on LONG_MIN */
  14.         while (isdigit(*s))
  15.                 n = 10*n - (*s++ - '0');
  16.         return neg ? n : -n;
  17. }