這道題看起來不難,但是他要考慮的小細節也太多了。除了題目中已經給出來的樣例,還有幾個測試過程中發現的樣例。考慮還是不夠全面
整數溢位這一塊處理的還是不夠好。
int_min=-2^31=-2147483648
int_max=2^31-1=2147483647
剛開始只是簡單處理
對於 ans1=ans0*10+str[i] 當ans0int_max/10,時就判斷其溢位,後來發現過於粗略了,例如
輸入:"2147483646"
預期:2147483646
但是在我的考慮下輸出:2147483647,只判斷了個位以外的情況,沒有判斷前9位=214748364,而最後一位<7的情況,此時並沒有溢位
還有就是
輸入:"+1" 預期:1
需要注意一下
class solution
}else if(zheng=true)
}ans=ans*10-48+str[i];
}else}}
if(zheng==false)
else
}};
8 字串轉換整數 atoi
題目描述 請你來實現乙個atoi函式,使其能將字串轉換成整數。首先,該函式會根據需要丟棄無用的開頭空格字元,直到尋找到第乙個非空格的字元為止。當我們尋找到的第乙個非空字元為正或者負號時,則將該符號與之後面盡可能多的連續數字組合起來,作為該整數的正負號 假如第乙個非空字元是數字,則直接將其與之後連續的...
8 字串轉換整數(atoi)
請你來實現乙個 atoi 函式,使其能將字串轉換成整數。首先,該函式會根據需要丟棄無用的開頭空格字元,直到尋找到第乙個非空格的字元為止。當我們尋找到的第乙個非空字元為正或者負號時,則將該符號與之後面盡可能多的連續數字組合起來,作為該整數的正負號 假如第乙個非空字元是數字,則直接將其與之後連續的數字字...
8 字串轉換整數 atoi
請你來實現乙個 atoi 函式,使其能將字串轉換成整數。首先,該函式會根據需要丟棄無用的開頭空格字元,直到尋找到第乙個非空格的字元為止。當我們尋找到的第乙個非空字元為正或者負號時,則將該符號與之後面盡可能多的連續數字組合起來,作為該整數的正負號 假如第乙個非空字元是數字,則直接將其與之後連續的數字字...