Leetcode008字符串转换整数

地址

https://leetcode-cn.com/problems/string-to-integer-atoi/

描述

在这里插入图片描述

思想

看注释就行。

代码

class Solution {
    
    
public:
    int myAtoi(string s) {
    
    
        //丢弃空格
        int k=0;
        while(k<s.size()&&s[k]==' ') k++;
        if(k==s.size()) return 0;
        //读取符号
        int signal=1;//没写符号假定为正
        if(s[k]=='-') {
    
    
            signal=-1;k++;
        }else if(s[k]=='+'){
    
    
            k++;
        }
        //读取数字
        long long res=0;
        while(k<s.size()&&s[k]>='0'&&s[k]<='9'){
    
    
            int r=s[k]-'0';
            res=res*10+r;
            k++;
            if(res>INT_MAX) break;
           
        }
        //溢出部分处理
        res=res*signal;
        if(res>INT_MAX) return INT_MAX;
        if(res<INT_MIN) return INT_MIN;
        return res;

    }
};

Guess you like

Origin blog.csdn.net/qq_52934831/article/details/121288394