String to Integer (atoi)
注意特殊情况
class Solution { public: int myAtoi(string str) { int i = 0; for(; i<str.size() && str[i] == ' '; ++i); int sign = 1; if(str[i] == '+') ++i; else if(str[i] == '-') { sign = -1; ++i; } int num = 0; for(; i<str.size(); ++i) { if(str[i] < '0' || str[i] > '9') break; if(num > INT_MAX/10 || (num == INT_MAX/10 && (str[i] - '0') > INT_MAX % 10)) return sign == 1 ? INT_MAX : INT_MIN; num = 10*num + (str[i] - '0'); } return num * sign; } };

浙公网安备 33010602011771号