空格處理
正負號處理
讀入數字 res = res*10 + num;(注意溢位)
定義i偏移量,字串長度
定義結果和符號正負
定義越界 int_max/10
省去空格
判斷正負號
省去正號負號
迴圈複製給res 並判斷下次運算是否越界 越界的話,返回最小/最大值
退出迴圈,返回結果乘以符號位
**:
class
solution
int i =
0, len = s.
length()
;int res =
0, firstchar =1;
// // firstchar 表示正負號,預設為 '+',即 1
int upperbound = int_max /10;
while
(s[i]
==' ')}
if(s[i]
=='-')if
(s[i]
=='+'
|| s[i]
=='-'
)for
(; i < len;
++i)
if(res > upperbound ||
(res == upperbound && s[i]
>
'7')
) res = res *10+
(s[i]
-'0');
}return firstchar * res;}}
;
力扣 8 字串轉換整數 atoi
一 題目描述 請你來實現乙個 atoi 函式,使其能將字串轉換成整數。首先,該函式會根據需要丟棄無用的開頭空格字元,直到尋找到第乙個非空格的字元為止。當我們尋找到的第乙個非空字元為正或者負號時,則將該符號與之後面盡可能多的連續數字組合起來,作為該整數的正負號 假如第乙個非空字元是數字,則直接將其與之...
力扣 8 字串轉換整數 atoi
請你來實現乙個 atoi 函式,使其能將字串轉換成整數。首先,該函式會根據需要丟棄無用的開頭空格字元,直到尋找到第乙個非空格的字元為止。接下來的轉化規則如下 如果第乙個非空字元為正或者負號時,則將該符號與之後面盡可能多的連續數字字元組合起來,形成乙個有符號整數。假如第乙個非空字元是數字,則直接將其與...
力扣 8 字串轉換整數 atoi
題目 請你來實現乙個 atoi 函式,使其能將字串轉換成整數。首先,該函式會根據需要丟棄無用的開頭空格字元,直到尋找到第乙個非空格的字元為止。接下來的轉化規則如下 如果第乙個非空字元為正或者負號時,則將該符號與之後面盡可能多的連續數字字元組合起來,形成乙個有符號整數。假如第乙個非空字元是數字,則直接...