字符串轉化爲整數(模擬實現atui)

class Solution { public: int StrToInt(string str) { if (str.empty()) return 0; int symbol = 1;//自定義正負轉換變量 if (str[0] == '-') //處理負號 { symbol = -1; str[0] = '0'; //這裏是字符'0',不是0 } else if (str[0] == '+') //處理正號 { symbol = 1; //爲什麼這兩步要將str[0]賦值爲‘0’? //因爲如果有正負號輸入進來將symbol設置後就可以在後面確定返回值的正負號了 //然後str[0]給成字符‘0’就是統一sum的計算過程,這一位給成0不會影響計算的結果 str[0] = '0'; } int sum = 0; for (int i = 0; i<str.size(); ++i) { if (str[i] < '0' || str[i] > '9') { sum = 0; break; } sum = sum * 10 + str[i] - '0'; } return symbol * sum; } };
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章