首页 > 学院 > 开发设计 > 正文

Leetcode-8. String to Integer (atoi)

2019-11-06 07:27:56
字体:
来源:转载
供稿:网友

题目

实现atoi函数 首先从字符串开始去除空白字符,直到第一个非空白字符。 判断第一个字符是加号或者减号。 字符串中可能包含非数字字符,遇到时应返回之前计算出的整数值。 如果不符合整数转换,返回0

代码

class Solution {public: int myAtoi(string str) { if(str.empty()) return 0; int i = 0; while(str[i] && str[i] == ' ') i++; if(!str[i]) return 0; bool poss = true; if(str[i] == '+') i++; else if(str[i] == '-'){ i++; poss = false; } long long int result = 0; while(str[i] != 0){ int num = str[i] - '0'; if(num > 9 || num < 0) return poss ? result : result * -1; result = result * 10 + num; if(result > 2147483647ll || result < -2147483648ll) return poss ? (int)0x7FFFFFFF : (int)0x80000000; i++; } return poss ? (int)result : (int)result * -1; }};
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表