剑指Offer 把字符串转换成整数

    xiaoxiao2021-04-15  302

     通过遍历实现,

    class Solution { public: int StrToInt(string str) { if(str == "0") //如果只有一个0,就返回0 return 0; int sum = 0; //用来记录总数 int flag = 1; //正负标签 int i = 0; //遍历 if(str[0] == '-'){ //第一个值为'-', flag = -1; //标志为-1 i++; //遍历进入下一个值 } if(str[0] == '+') //第一个值为'+' i++; //遍历进入下一个值 for(i; i < str.size(); i++){ //遍历 if(str[i] >= '0' && str[i] <= '9') //如果当前值在区间内 sum = sum * 10 + str[i] - '0'; //计算 else //不在区间内说明不合法 return 0; } return sum*flag; //返回总数与符号标志的乘积 } };

     


    最新回复(0)