美文网首页
1.把一个字符串转为整数

1.把一个字符串转为整数

作者: 红豆豆 | 来源:发表于2020-03-26 21:09 被阅读0次

#include <iostream>

#include <string>

using namespace std;

class Solution {

public:

    enum Status { kValid = 0, kInvalid };

    int g_nStatus = kValid;

    int StrToInt(string str) {

        g_nStatus = kInvalid;

        long long num = 0;

        const char* cstr = str.c_str();

        // 1.指针为NULL或空字符处理

        if ((cstr == NULL) || (*cstr == '\0'))

        {

            return 0;

        }

        // 2.正负号处理

        int minus = 1;

        if (*cstr == '-')

        {

            minus = -1;

            cstr++;

        }

        else if (*cstr == '+')

            cstr++;

        // 迭代字符串

        while (*cstr != '\0')

        {

            // 3.非数字异常字符处理

            if (*cstr < '0' || *cstr > '9')

            {

                g_nStatus = kInvalid;

                num = 0;

                break;

            }

            // 4.核心逻辑

            g_nStatus = kValid;

            num = num * 10 + (*cstr - '0');

            cstr++;

            // 5.数据溢出处理

            if (((minus > 0) && (num > 0x7FFFFFFF)) ||

                ((minus < 0) && (num > 0x80000000)))

            {

                g_nStatus = kInvalid;

                num = 0;

                break;

            }

        }

        // 5.后处理,增加正负号

        if (g_nStatus == kValid)

            num = num * minus;

        return (int)num;

    }

};

相关文章

  • js字符串常用的方法总结

    1. toLowerCase()把字符串转为小写返回新的字符串 2. toUpperCase()把字符串转为大写,...

  • 1.把一个字符串转为整数

    #include #include using namespace std; class Solution { p...

  • Python字符串转换整数 (atoi)

    Python字符串转换整数 (atoi) 题目: 实现 atoi,将字符串转为整数。 提示:仔细考虑所有输入情况。...

  • 4,字符串转整数/数组与字符串

    字符串转整数 (atoi) 实现 atoi,将字符串转为整数。 在找到第一个非空字符之前,需要移除掉字符串中的空格...

  • Swift 字符串转整数 (atoi) - LeetCode

    题目:字符串转整数 (atoi) 描述:实现 atoi,将字符串转为整数。 1、在找到第一个非空字符之前,需要移除...

  • 字符串转整数 (atoi)

    字符串转整数 (atoi) 实现atoi,将字符串转为整数。 在找到第一个非空字符之前,需要移除掉字符串中的空格字...

  • 字符串转数字

    parseInt将字符串(String)类型转为整数类型,结果是整数或者NaN。从头解析string为整数,在遇到...

  • LeetCodeDay09

    8. 字符串转整数 (atoi) 描述 实现 atoi,将字符串转为整数。 在找到第一个非空字符之前,函数需尽可能...

  • javascript里的数据类型转换

    1. 转为数值 使用Number()方法 使用parseInt()方法,把字符串转为数值。 parseInt的返回...

  • js字符串转数字

    js字符串转数字方法:parseInt()、parseFloat()parseInt转为整数,parseFloat...

网友评论

      本文标题:1.把一个字符串转为整数

      本文链接:https://www.haomeiwen.com/subject/bqyhuhtx.html