/programs/system/shell/system/string.c |
158,12 → 158,12 |
{ |
int i, sign; |
|
if ((sign = n) < 0) /* çàïèñûâàåì çíàê */ |
n = -n; /* äåëàåì n ïîëîæèòåëüíûì ÷èñëîì */ |
if ((sign = n) < 0) |
n = -n; |
i = 0; |
do { /* ãåíåðèðóåì öèôðû â îáðàòíîì ïîðÿäêå */ |
s[i++] = n % 10 + '0'; /* áåðåì ñëåäóþùóþ öèôðó */ |
} while ((n /= 10) > 0); /* óäàëÿåì */ |
do { |
s[i++] = n % 10 + '0'; |
} while ((n /= 10) > 0); |
if (sign < 0) |
s[i++] = '-'; |
s[i] = '\0'; |
170,3 → 170,18 |
reverse(s); |
} |
|
|
|
int _atoi ( char *s ) |
{ |
int i, n; |
|
n = 0; |
for ( i = 0; s[i]!= '\0'; ++i) |
if ((s[i]<'0') || (s[i]>'9')) |
return 0; |
else |
n = 10 * n + s[i] - '0'; |
|
return n; |
} |