题目描述
将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。
分析:这个是很基础的题目了,可惜上次在笔试中也还是忘记考虑了负数。。
代码:
class Solution {
public:
int StrToInt(string str) {
int n=str.size();
if(n==0) return 0;
int ret=0;
int flag=1;
if(str[0]=='-'){
flag=-1;
}
int i=0;
if(str[0]=='-'||str[0]=='+'){
i=1;
}
for(;i<n;i++){
if(str[i]>='0'&&str[i]<='9'){
ret*=10;
ret+=str[i]-'0';
}else{
return 0;
}
}
return ret*flag;
}
};