📄 scan2.c
字号:
_Iint (iptr, length, numbase) int *iptr, length;{ int n, minus, numdig; extern int _Isfil, (*_Iungc)(), (*_Igetc)(); int c, dval;n = minus = numdig = 0;switch ((c=_Inxch())) { case '-': minus = 1; case '+': break; default: (*_Iungc)(c,_Isfil); }while ((dval=_Idigt(c=((*_Igetc)(_Isfil)), numbase ) ) >= 0 && numdig++ < length) n = n*numbase + dval;(*_Iungc)(c,_Isfil);if (numdig == 0) return (-1);if (iptr == 0) return (0);*iptr = minus ? -n : n;return (1);}_Idigt (x, base){switch (x) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': return(x-'0'); case '8': case '9': if (base > 8) return(x - '0'); case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': if (base >10) return(x - 'a' + 10); case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': if (base > 10) return(x-'A' + 10); }return(-1);}_Ilong (dptr, length) double *dptr; int length;{ char temp[75]; int _Inodg(); double x; double atof();if (_Isstr(temp, length, _Inodg) < 0) return (-1);x = atof(temp);if (dptr == 0) return (0);*dptr = x;return (1);}_Isstr (sptr, length, stopf) char *sptr; int length, (*stopf)();{ int ch, initlen, _Inxch(); extern int _Isfil, (*_Igetc)(), (*_Iungc)();initlen = length;if ((ch=_Inxch()) < 0) return (-1);(*_Iungc)(ch,_Isfil);while (!((*stopf)(ch=(*_Igetc)(_Isfil))) && length-- > 0) if (sptr != 0) *(sptr++) = ch;if (ch >= 0) (*_Iungc)(ch,_Isfil);if (length == initlen) return (-1);if (sptr == 0) return (0);*sptr = '\0';return (1);}_Iestr (c)char c;{if (_Ispce(c)) return (1);if (c == '\0') return (1);return (0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -