1*2816Swnj /* @(#)atoi.c 4.2 (Berkeley) 1/11/81 */ 2*2816Swnj atoi(p) 3*2816Swnj register char *p; 41954Swnj { 5*2816Swnj register int n; 6*2816Swnj register int f; 71954Swnj 81954Swnj n = 0; 91954Swnj f = 0; 10*2816Swnj for(;;p++) { 11*2816Swnj switch(*p) { 12*2816Swnj case ' ': 13*2816Swnj case '\t': 14*2816Swnj continue; 15*2816Swnj case '-': 16*2816Swnj f++; 17*2816Swnj case '+': 18*2816Swnj p++; 19*2816Swnj } 20*2816Swnj break; 211954Swnj } 221954Swnj while(*p >= '0' && *p <= '9') 231954Swnj n = n*10 + *p++ - '0'; 24*2816Swnj return(f? -n: n); 251954Swnj } 26