问题及代码:
/*编写函数atoi(s),将字符串转换为对应数值*/
#include<ctype.h>
/*atoi函数:将s转换为整型数*/
int atoi(char s[])
{
int i,n,sign;
for(i=0;isspace(s[i]);i++) //isspace()函数判断参数是否为空格 ,跳过空白符
;
sign = (s[i]=='-')?-1:1; //这句的目的是什么?
if(s[i]=='+'||s[i]=='-') //跳过符号
i++;
for(n=0;isdigit(s[i]);i++); //isdigit()函数判断参数是否为数字
n=10*n+(s[i]-'0');
return sign*n;
}
/*标准库函数strtol()更完善,它将字符串转换为长整型数*/