diff options
| -rw-r--r-- | 4/2.c | 8 |
1 files changed, 0 insertions, 8 deletions
@@ -29,16 +29,13 @@ double atof(char s[]) { ; sign = (s[i] == '-') ? -1 : 1; - if (s[i] == '+' || s[i] == '-') i++; for (val = 0.0; isdigit(s[i]); i++) val = 10.0 * val + (s[i] - '0'); - if (s[i] == '.') i++; - for (power = 1.0; isdigit(s[i]); i++) { val = 10.0 * val + (s[i] - '0'); power *= 10.0; @@ -46,18 +43,13 @@ double atof(char s[]) { if (s[i] == 'e' || s[i] == 'E') i++; - exp_sign = s[i] == '-' ? -1 : 1; - if (s[i] == '-' || s[i] == '+') i++; - for (exp = 0; isdigit(s[i]); i++) exp = 10 * exp + (s[i] - '0'); - if (exp_sign < 0) exp = exp_sign * exp; - if (exp < 0) { for (j = exp; j < 0; j++) power *= 10.0; |
