int atoi(char* mm)
{
if(NULL==mm)
{
return 0;
}
bool positive=true;
if(mm[0]=='-')
{
positive=false;
mm++;
}
if(mm[0]=='+')
{
mm++;
}
int sum=0;
long long lsum=0;
for(char* index=mm;*index!='\0';index++)
{
lsum*=10;
sum*=10;
int tmp=((*index)-'0');
if(tmp>=10||tmp<0)
{
return 0;
}
lsum+=tmp;
if(lsum>numeric_limits<int>::max())
{
return 0;
}
sum+=tmp;
}
return sum;
}
关于atoi的函数实现
最新推荐文章于 2024-09-11 21:49:54 发布