您的位置:首页 > 编程语言 > C语言/C++

[LeetCode] 8. String to Integer (atoi)

2016-07-14 14:44 357 查看
思路:

先跳过所有空格, 然后判断正负号, 根据符号修改sign标志, 关键点还是要拿long long变量储存数据, 这样比较容易判断是否溢出

int myAtoi(string str) {
long long res = 0;
int sign = 1, i = 0;

while (str[i] = ' ') i++;

if (str[i] == '+') i++;
else if (str[i] == '-') i++, sign = -1;

for (; i < str.length(); i++) {
if (str[i] >= '0' && str[i] <= '9') {
res = res * 10 + str[i] - '0';
if (res > INT_MAX)
return sign > 0 ? INT_MAX : INT_MIN;
}
else break;
}

res = (int)(res * sign);
return res;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ leetcode string