long atol(const char *p),
输入是一个字符串,要求返回该字符串对应的long型整数。
比如,输入“-123”, 则返回123,
输入:“123d45”, 则返回有效的数字 123
代码如下:
long atol(char *p)
{
long result=0;
char *q=p;
int flag=0;
switch(*q)
{
case '-':
flag=1;
q++;
break;
case '+':
flag=0;
q++;
break;
}
while( *q>='0' && *q<='9')
{
int t = *q - '0';
if(flag)
{
result = 10*result - t;
}
else
result =10*result +t;
}
return result;
}