博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
atoi 函数
阅读量:4661 次
发布时间:2019-06-09

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

  要考虑的情况蛮多,先自动忽略字符串前面的空白字符,然后接下来可以是数字或一个正负号,后面遇到非法字符就结束读取,

如果字符串是空串或者第一个就是非法字符就返回0,如果正溢出返回INT_MAX,负溢出返回INT_MIN

int myAtoi(char *str) {    long long ans = 0;    int pstr = 0,sign = 0;    //去掉字符串前面的空格    while(str[pstr] == ' ') pstr++;    //判断正负号    if(str[pstr] == '-') sign = 1;    //如果第一个字符是正好或者负号,指针加一    if(str[pstr] == '+' || str[pstr] == '-') pstr++;    //保证无非法字符,以及溢出及时跳出    while(str[pstr] >='0' && str[pstr]<='9' &&ans 
INT_MAX) return sign ? INT_MIN:INT_MAX; return sign?-1*ans:ans;}

 

转载于:https://www.cnblogs.com/llei1573/p/4325765.html

你可能感兴趣的文章
多媒体音量条显示异常跳动
查看>>
运算符及题目(2017.1.8)
查看>>
ssh自动分发密匙脚本样板
查看>>
转 小辉_Ray CORS(跨域资源共享)
查看>>
Linux安装postgresql
查看>>
MyBatis启动:MapperStatement创建
查看>>
【 全干货 】5 分钟带你看懂 Docker !
查看>>
[转]优化Flash性能
查看>>
popStar手机游戏机机对战程序
查看>>
lambda表达式树
查看>>
二次注入原理及防御
查看>>
会话记住已登录功能
查看>>
Linux内核分析——可执行程序的装载
查看>>
第一阶段冲刺3
查看>>
父类引用指向子类对象
查看>>
网页如何实现下载功能
查看>>
IT男专用表白程序
查看>>
读《大道至简》第六章感想
查看>>
ef linq 中判断实体中是否包含某集合
查看>>
章三 链表
查看>>