题解 | #把字符串转换成整数#
把字符串转换成整数
https://www.nowcoder.com/practice/1277c681251b4372bdef344468e4f26e
class Solution { public: int StrToInt(string str) { int n = 0; //处理首位不是- + 数字 其他位有不是数字的字符串 int flog = -1; if (str[0] == '+') { flog = 0; } if (str[0] == '-') { flog = 1; } for (int i = 1; i < str.size(); i++) { if (str[i] > '9' || str[i] < '0') return 0; } if (flog == -1 && (str[0] > '9' || str[0] < '0')) return 0; //将字符转化为数字 //第一个字符是 - if (flog == 1) { for (int i = 1; i < str.size(); i++) { n += (str[i] - '0') * pow(10, str.size() - i - 1); } return -n; } //第一个字符是+ if (flog == 0) { for (int i = 1; i < str.size(); i++) { n += (str[i] - '0') * pow(10, str.size() - i - 1); } return n; } //字符全是数字 for (int i = 0; i < str.size(); i++) { n += (str[i] - '0') * pow(10, str.size() - i - 1); } return n; } };