NC100 将字符串转化为整数
class Solution {
public:
int atoi(const char *str) {
long long ans=0;
int flag=0;
for(int i=0;str[i]!='\0';i++)
{
//去空格
if(str[i]=='+'||str[i]==' ') continue;
//记录小于0
if(str[i]=='-')
{
flag=1;
continue;
}
//有不合法数字直接结束
if(str[i]>'9'||str[i]<'0') break;
ans=ans*10+(str[i]-'0');
//判断是否溢出
if (ans > INT32_MAX ) {
return flag == 0? INT32_MAX : INT32_MIN;
}
}
if(flag==1) ans=-ans;
return ans;
}
};