String to Integer (atoi)

来源:互联网 发布:hany是什么牌子 知乎 编辑:程序博客网 时间:2024/04/26 01:11
class Solution {public:    int myAtoi(string str) {        int i = 0;        bool isNeg = false;        while(isspace(str[i])) i++;        if(str[i]=='-') isNeg = true;        if(str[i]=='+' ||str[i] == '-') i++;        int res = 0;        while(i < str.length() && isdigit(str[i])){            if(res > INT_MAX/10){                if(isNeg) return INT_MIN;                else return INT_MAX;            }            res *= 10;            int cur = str[i] - '0';            if(res > INT_MAX - cur){                if(isNeg) return INT_MIN;                else return INT_MAX;            }            res += cur;            i++;        }        if(isNeg) return -res;        return res;    }};
0 0
原创粉丝点击