LeetCode8. 文字列回転整数(atoi)

1090 ワード

この関数は文字列を整数に変換する機能です.
テーマ分析:本題の鍵は特殊な状況の処理にある.
特殊な状況はあまりにも多いが、何度も提出することで、自分のコードがどのサンプルに通じないかを知ってから、コードを修正してこのサンプルを上書きすればいい.
特殊サンプル:
「」、「+004500」、「+-2」、「003」、「1 a」など
コードの表示:
class Solution {
public:
    int myAtoi(string str) {
        long long result = 0;
        bool flag = true;
        int pos = -1;   
        bool temp = false;  //               
        for(int i=0;i'9'){ //          ,     
                break;
            } 
            result = result*10 + (str[i]-'0');
            if(result >= 2147483648){
                result = 2147483648;
                break;
            }
        }
        if(!flag){
            result = 0 - result;
        }
        if(result >= INT_MAX){
            result = INT_MAX; 
        }
        if(str[0]!=' ' && (str[0]'9') && str[0]!='+' && str[0]!='-')  //       
            result = 0;
        return result;
    }
};