atoi

class Solution {
public:
    long long StrToInt(string str) {
        if(str.length()==0) return 0;
        if(str[0]!='+'&&str[0]!='-'&&!isdigit(str[0])) return 0;
        long long sum = 0,tag = 1,i=0;
        if(isdigit(str[i])) {
			while(i<str.length()-1) {
				if(isdigit(str[i])) {
					sum = (sum+(str[i]-'0'))*10;
					i++;
				} else return 0;
			}
			if(isdigit(str[str.length()-1])) sum+=(str[str.length()-1]-'0');
			else return 0;
		} else {
			if(str[i]=='-') tag=-1;
			i++;
			while(i<str.length()-1) {
				if(isdigit(str[i])) {
					sum = (sum+(str[i]-'0'))*10;
					i++;
				} else return 0;
			}
			if(isdigit(str[str.length()-1])) sum+=(str[str.length()-1]-'0');
			else return 0;
		}
		return sum*tag;
    }
};

 

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 程序猿惹谁了 设计师:白松林 返回首页