把字符串转换为整数
2016-01-31 08:56
381 查看
注意问题:
1)字符串是空指针的情况。
2)假设输入的是一个空字符串“”
3)全部‘0’到‘9’之外的字符都是非法的吗?加号和减号是合法输入。
4) 考虑溢出
http://www.cnblogs.com/foxinhongyan/articles/1267624.html
1)字符串是空指针的情况。
2)假设输入的是一个空字符串“”
3)全部‘0’到‘9’之外的字符都是非法的吗?加号和减号是合法输入。
4) 考虑溢出
#include <iostream> using namespace std; bool g_value=false; int atoi(char * number){ if(number == NULL || *number=='\0'){ g_value=true; return 0; } double count=0;//此处是double型 bool min=false; if(*number=='-'){ min=true; number++; }else if('+'==*number){ min=false; number++; }else min=false; while(*(number)!='\0'){ if((*number-'0')>=0&&(*number-'0')<=9){ count = count*10 + (*number-'0'); if(false==min&&count> 0x7FFFFFFF ||true==min&&count<(signed int)0x80000000){ cout<<"发生溢出"<<endl; count=0; break; } number++; }else{ break; } } if(min) count*=-1; return (int)count; } int main(){ char * number="-11111"; cout<<atoi(number); return 0; }
memmove和memcpy 差别与实现:
http://www.cnblogs.com/foxinhongyan/articles/1267624.html
相关文章推荐
- 通过条件的查询----涉及到三层(Action Service DAO)
- 2015杂谈
- poj 1704 Georgia and Bob(阶梯博弈)
- 奔小康赚大钱 hdu 2255
- ios-提升之【1】-UIApplication
- 2016太原网络营销师郭文军分享网站中如何合理布局关键词?
- vs2012 Nuget错误:“未能解析此远程名称api.nuget.org”
- RadioGroup方法总结
- caffe 卷积层的运算
- 日志分析(二)jvm agent+kafka+es +kibana 的OLAP日志分析系统
- Redis源码解析:05跳跃表
- HDOJ 5615-Jam's math problem【数学】
- 分布式技术一周技术动态 2016.01.31
- Oracle单节点开启关闭归档日志
- 矩阵相乘
- C#中using的几种用法
- underscorejs-pluck学习
- 一起talk C栗子吧(第一百一十五回:C语言实例--线程同步之互斥量一)
- SpringAOP拦截Controller,Service实现日志管理(自定义注解的方式)
- 小蚂蚁学习数据结构(27)——题目——一个关于链表的题目