//3.3 atoi
//1.+.-符号。2.空格注意。3.溢出数据。4.无效输入。
int change(char *str)
{
int i,sum,temp;
i=0;sum=0;temp=1;
const int len=strlen(str);
while(str[i]==' '&&i<len)
{
i++;
}
if(str[i]=='+')
{
i++;
}
else if(str[i]=='-')
{
temp=-1;
}
for(;i<len;i++)
{
if(str[i]<'0' || str[i]>'9')
break;
if(sum>INT_MAX/10 || (sum==INT_MAX/10 && str[i]-'0'>INT_MAX%10))
return temp==-1? INT_MIN:INT_MAX;
sum=sum*10+(str[i]-'0');
}
return sum*temp;
}
atoi函数
最新推荐文章于 2024-04-19 01:00:00 发布