1 #include <stdlib.h>
2 #include <ctype.h>
3 
atoll(const char * s)4 long long atoll(const char *s)
5 {
6 	long 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 LLONG_MIN */
14 	while (isdigit(*s))
15 		n = 10*n - (*s++ - '0');
16 	return neg ? n : -n;
17 }
18