github.com/afumu/libc@v0.0.6/musl/src/stdlib/atoi.c (about)

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