eetcode 之String to Integer (atoi)(28)

Posted 牧马人夏峥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了eetcode 之String to Integer (atoi)(28)相关的知识,希望对你有一定的参考价值。

字符串转为数字,细节题。要考虑空格、正负号,当转化的数字超过最大或最小是怎么办。

 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;
      }
View Code

 

以上是关于eetcode 之String to Integer (atoi)(28)的主要内容,如果未能解决你的问题,请参考以下文章

銆恖eetcode銆?8. 鍏ㄦ帓鍒?2

閾捐〃--鍒嗛殧閾捐〃锛坙eetcode86

銆恖eetcode銆?534. 缁熻濂戒笁鍏冪粍

銆恖eetcode銆戦潰璇曢 08.10. 棰滆壊濉厖

鍚村繝寮猴細鍒稬eetCode鐨勬纭Э鍔匡紒

PostgreSQL之Array_to_String用法