1,常规方法
- 需要判断元素的符号,记录其正负值
- 根据元素的长度,依次构建元素的个位、十位、百位等数据
int to_digit(std::string& var){bool signal = false;int num_index=0;if(!check(var)){if (var[0]=='-'){signal = true;num_index=1;}}int ans=0;for (int i = num_index; i < var.size(); ++i) {ans = ans*10+(var[i]-'0');}if (signal){return -ans;}return ans;
}
2,使用std::stringstream流转处理
- 将string类型的数据转化为int类型的数据
int to_digit_2(std::string& var){int ans{};std::stringstream ss{};ss << var;ss >> ans;return ans;
}