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;
}