atoi是C++中将字符串转为整数的函数,我们可以自己尝试实现atoi()函数
要求:
- 这个函数需要丢弃之前的空白字符,直到找到第一个非空白字符。之后从这个字符开始,选取一个可选的正号或负号后面跟随尽可能多的数字,并将其解释为数字的值。
- 字符串可以在形成整数的字符后包括多余的字符,将这些字符忽略,这些字符对于函数的行为没有影响。
-如果字符串中的第一个非空白的字符不是有效的整数,或者没有这样的序列存在,字符串为空或者只包含空白字符则不进行转换。 - 如果不能执行有效的转换,则返回 0。如果正确的值超过的可表示的范围,则返回 INT_MAX(2147483647)或 INT_MIN(-2147483648)。
直接放代码(C++):
1 | int myAtoi(string str) { |
Notes 注意
C++的INT_MAX是2147483647而INT_MIN是-2147483648,最后一位是不一样的,因为有0的存在,所以,需要分开处理正数和负数的问题
