题解 | #将整数字符串转成整数值#

将整数字符串转成整数值

http://www.nowcoder.com/practice/0c630b57e3d144379508d63d8eb65854

//本题纯模拟
//一开始错了不要紧,看数据给的是什么再把考虑不周的补上就行,还是入门题
#include<bits/stdc++.h>
using namespace std;
int main(){
    string str;
    cin>>str;
    if(str[0]=='0'){//首字符为0不符合日常书写习惯
        cout<<0<<endl;
        return 0;
    }
    long long res=0;
    bool flag=true;//确定正负号
    for(int i=0;i<str.size();i++){
        if(str[i]>='0'&&str[i]<='9'){
            res=res*10+str[i]-'0';
        }
        else if(str[i]=='-'&&i==0){
            flag=false;
        }
        else{//说明str[i]不是数字字符
            cout<<0<<endl;
            return 0;
        }
    }
    if(flag){
        if(res<=2147483647){
               cout<<res<<endl;
                return 0;
        }
       else{
           cout<<0<<endl;
           return 0;
       }
    }
    else{
        if(res==0||res>2147483648){
            cout<<0<<endl;
            return 0;
        }
        cout<<"-"<<res<<endl;
        return 0;
    }
}
全部评论

相关推荐

06-07 19:59
门头沟学院 C++
补药卡我啊😭:都快15年前的了还在11新特性
你的简历改到第几版了
点赞 评论 收藏
分享
06-27 12:30
延安大学 C++
实习+外包,这两个公司底层融为一体了,如何评价呢?
一表renzha:之前面了一家外包的大模型,基本上都能答出来,那面试官感觉还没我懂,然后把我挂了,我都还没嫌弃他是外包,他把我挂了……
第一份工作能做外包吗?
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务