题目描述
87.把字符串转换成整数
方法1
C++ 代码
class Solution{
public:
int strToInt(string str){
int k=0;//字符串下标位置
long long f=1;//判断正负,f=1为正,f=-1为负
while(k<str.size()&&str[k]==' ')//越过空格区域
k++;
if(k<str.size()&&str[k]=='-'){
k++;
f=-1;
}
if(k<str.size()&&str[k]=='+') k++;
long long res=0;//r存储要转换的数
while(k<str.size()&&str[k]<='9'&str[k]>='0'){
res=res*10+f*(str[k]-'0');//每个res乘10,把个位空出来留着加下一个数,f表示正负
if(res>INT_MAX) return INT_MAX;
if(res<INT_MIN) return INT_MIN;
k++;
}
return res;
}
};