博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
剑指offer——面试题49:不使用atoi库函数实现把字符串转换成整数
阅读量:4086 次
发布时间:2019-05-25

本文共 1059 字,大约阅读时间需要 3 分钟。

下面是参考代码:

enum Status {kValid = 0, kInvalid};int g_nStatus = kValid;int StrToInt(const char* str){    g_nStatus = kInvalid;    long long num = 0;    if(str != NULL && *str != '\0')     {        bool minus = false;        if(*str == '+')            str ++;        else if(*str == '-')         {            str ++;            minus = true;        }        if(*str != '\0')         {            num = StrToIntCore(str, minus);        }    }    return (int)num;}long long StrToIntCore(const char* digit, bool minus){    long long num = 0;    while(*digit != '\0')     {        if(*digit >= '0' && *digit <= '9')         {            int flag = minus ? -1 : 1;            num = num * 10 + flag * (*digit - '0');            if((!minus && num > 0x7FFFFFFF)                 || (minus && num < (signed int)0x80000000))            {                num = 0;                break;            }            digit++;        }        else         {            num = 0;            break;        }    }    if(*digit == '\0')     {        g_nStatus = kValid;    }    return num;}

你可能感兴趣的文章
《无人机电机与电调技术》可以看看
查看>>
我发现七月在线的GAAS课程基本都讲到了
查看>>
电机堵转
查看>>
carzepony也在想往FreeRTOS上迁移
查看>>
可以买个好点的电烙铁
查看>>
ACfly调参记录(包括ACfly-F330和ACfly-T265)
查看>>
一定记得每飞几次或者隔一天要把螺丝和浆帽拧一次,确实会松的
查看>>
《多旋翼无人飞行器嵌入式飞控开发指南》里基于FreeRTOS的无人机软件框架
查看>>
思岚A1的SDK其实很好读懂,每个函数清晰明了,可以直接调用
查看>>
pixhawk(PX4)的一些论坛网站(包括中文版的PX4用户手册和PX4开发手册)
查看>>
串级 PID 为什么外环输出是内环的期望?(和我之前对串级PID的总结一样)
查看>>
我刚刚才完全清楚GPS模块的那根杆子是怎么固定安装好的
查看>>
去github里面找找也没有别人无人机+SLAM的工程
查看>>
PX4与ROS关系以及仿真控制(键盘控制无人机)
查看>>
我对无人机重心高度的理解
查看>>
现在明白为什么无名博客里好几篇文章在讲传感器的滞后
查看>>
实际我看Pixhawk定高模式其实也是飞得很稳,飘得也不厉害
查看>>
Pixhawk解锁常见错误
查看>>
C++的模板化等等的确实比C用起来方便多了
查看>>
ROS是不是可以理解成一个虚拟机,就是操作系统之上的操作系统
查看>>