LeetCode刷题(C++)——String to Integer (atoi)(Medium)

来源:互联网 发布:好看的港剧推荐知乎 编辑:程序博客网 时间:2024/06/05 19:51

Implement atoi to convert a string to an integer.

Hint: Carefully consider all possible input cases. If you want a challenge, please do not see below and ask yourself what are the possible input cases.

Notes: It is intended for this problem to be specified vaguely (ie, no given input specs). You are responsible to gather all the input requirements up front.

class Solution {public:    int myAtoi(string str) {        if (str.empty())return 0;int i = 0; bool isPositive = true;while (str[i] == ' ')i++;if (str[i] == '+')i++;else if (str[i] == '-'){isPositive = false;i++;}long long int v = 0;for (;str[i] != '\0';i++){if (str[i] >= '0'&&str[i] <= '9'){v = v * 10 + (str[i] - '0');if (v > INT_MAX)break;}elsebreak;}if (!isPositive)v = -v;if (v > INT_MAX)v = INT_MAX;if (v < INT_MIN)v = INT_MIN;return (int)v;    }};


0 0