AcWing 87. 把字符串转换成整数
原题链接
中等
作者:
陈陈陈
,
2020-12-20 15:46:09
,
所有人可见
,
阅读 324
C++ 代码
class Solution {
public:
int strToInt(string str) {
int flag = 1;
int i = 0;
long long res = 0;
while(str[i] == ' ') i ++; // 过滤空格
if(str[i] == '-') flag = -1, i ++; // 处理正负号
if(str[i] == '+') i ++;
while('0' <= str[i] && str[i] <= '9') // 读取数字 res是绝对值
{
res = res * 10 + (int)(str[i] - 48);
if(res >= INT_MAX && flag == 1) return INT_MAX;
if(res >= INT_MAX && flag == -1) return INT_MIN;
i ++;
}
return flag * res;
}
};