eetcode 之String to Integer (atoi)(28)
Posted 牧马人夏峥
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了eetcode 之String to Integer (atoi)(28)相关的知识,希望对你有一定的参考价值。
字符串转为数字,细节题。要考虑空格、正负号,当转化的数字超过最大或最小是怎么办。
![](https://image.cha138.com/20210612/3e7ed8a4c44241f29e940196cd7eb1db.jpg)
int atoi(char *str) { int len = strlen(str); int sign = 1; int num = 0; int i = 0; while (str[i] == \' \'&& i < len)i++; if (str[i] == \'+\')i++; else if (str[i] == \'-\') { sign = -1; i++; } for (; i < len; 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_MIN : INT_MAX; } num = num * 10 + str[i] - \'0\'; } return num*sign; }
以上是关于eetcode 之String to Integer (atoi)(28)的主要内容,如果未能解决你的问题,请参考以下文章