zoukankan      html  css  js  c++  java
  • 剑指offer48-把字符串转换成整数

    题目描述

    将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0

    输入描述:

    输入一个字符串,包括数字字母符号,可以为空

    输出描述:

    如果是合法的数值表达则返回该数字,否则返回0;
    以下解答牛客网,通过率85%,测试用例-2147483649,无法在int中保存;
        int StrToInt(string str) {
            //正负,越界,2的31次方2147483648
            //int范围是-2^31,2^31-1;
            if(str==""||str[0]=='0') return 0;
            
            int i=0;

            long long res=0;
            if(str[0]=='+'||str[0]=='-'){i++;}
            while(str[i]!='')
            {
                if(str[i]>'9'||str[i]<'0')return 0;
                res=res*10+(str[i]-'0');
                i++;
            }
           //if(str[0]=='-'&&res>2147483648)return 0;
            //if(str[0]!='-'&&res>2147483647)return 0;
            return (str[0]=='-')?-res:res;
            //return res;
            //-2147483649输出为原值,已超过int能存储的范围
        }

  • 相关阅读:
    基于Centos 7 vue+nginx+docker 的前端项目部署
    uni-app学习随笔
    微服务和Docker
    Ado.Net
    数据库(SQLServer)
    JavaScript
    CSS样式
    HTML前端标签
    vue中 拖动元素边框 改变元素宽度
    vue学习笔记14
  • 原文地址:https://www.cnblogs.com/trouble-easy/p/12980505.html
Copyright © 2011-2022 走看看