26 lines
348 B
Plaintext
26 lines
348 B
Plaintext
atoi(str)
|
|
{
|
|
local i;
|
|
local sign;
|
|
local out;
|
|
out = 0;
|
|
sign = 0;
|
|
i = 0;
|
|
loop {
|
|
if ([str + i] == '-')
|
|
sign = sign == 0;
|
|
else if ([str + i] != '+')
|
|
break;
|
|
i = i + 1;
|
|
}
|
|
loop {
|
|
if ([str + i] == 0 | isdigit([str + i]) == 0)
|
|
break;
|
|
out = out * 10 + [str + i] - '0';
|
|
i = i + 1;
|
|
}
|
|
if (sign)
|
|
return (0 - out);
|
|
return out;
|
|
}
|