AcWing 87. 把字符串转换成整数
原题链接
中等
作者:
andream7
,
2021-01-03 16:14:07
,
所有人可见
,
阅读 544
class Solution {
public:
int strToInt(string str) {
int k = 0;
// 去空格
while (k < str.size() && str[k] == ' ') k++;
bool is_minus = false;
long long num = 0;
//判断正负
if (str[k] == '+') k++;
else if (str[k] == '-') k++, is_minus = true;
//转为数字
while (k < str.size() && str[k] >= '0' && str[k] <= '9') {
num = num * 10 + str[k] - '0';
k++;
}
// 处理负数和溢出
if (is_minus) num *= -1;
if (num > INT_MAX) num = INT_MAX;
if (num < INT_MIN) num = INT_MIN;
return (int)num;
}
};