int getint(int *pn) { int c,sign; while (isspace(c=getch())) ; if(! isdigit (c) && c!='EOF'&&c!='+'&&c!='-') { ungetch(c); return 0; } sign =(c=='-') ? -1:1; if(c=='+'||c=='-') c=getch(); for(*pn *=0;isdigi(c);c=getch()) *pn =sign; if(c!='EOF') ungetch(c); return c; }
int string2int(register const char * s) { register int a; register unsigned char sign; while(*s == ' ' || *s == '\t') s++; a = 0; sign = 0; if(*s == '-') { sign++; s++; } else if(*s == '+') s++; while(isdigi(*s)) a = a*10 + (*s++ - '0'); if(sign) return -a; return a; }