将字符串转换为整数
来源:互联网 发布:工业机器人技术编程 编辑:程序博客网 时间:2024/05/16 11:57
思路
1 考虑溢出
2 考虑正负号
3 用全局变量标识返回值的状态
代码:
bool GFlag=true; int atoi(const char *str) { if(str==NULL) return 0; GFlag=false; bool flag=true; if(*str=='-'){ flag=false; str++; }else if(*str=='+') str++; return strToInt(str,flag); } int strToInt(const char* str,bool f){ int result=0; while(*str!='\0'){ if(*str>='0'&&*str<='9'){ int flag=f ? 1 : -1; result=result*10+flag * (*str-'0'); if((f&&result>0x7FFFFFFF)||(!f&&result<0x80000000)){ result=0; break; } str++; }else{ result=0; break; } } if(*str=='\0') GFlag=true; return result; }
代码2:
int atoi(const char *str) { if(str==NULL) return 0; int len=strlen(str); int i=0; while(str[i]==' ') i++; bool flag=true; if(str[i]=='-'){ flag=false; i++; }else if(str[i]=='+') i++; long long result=0; while(i<len){ if(str[i]>='0'&&str[i]<='9'){ result=result*10+str[i]-'0'; if(result>INT_MAX) return flag?INT_MAX:INT_MIN; }else{ return flag?result:(-1)*result; } i++; } return flag?result:(-1)*result; }
阅读全文
0 0
- 将整数转换为字符串
- 将字符串转换为整数
- 将字符串转换为整数
- 将字符串转换为整数
- 将字符串转换为整数
- 将字符串转换为整数
- 将字符串转换为整数
- 将整数字符串转换为整数
- 将C字符串转换为整数
- 将一个字符串转换为整数
- 将一个整数转换为字符串
- 将整数转换为宽字符串
- 008将字符串转换为整数
- 将字符串转换为整数并输出
- 递归将整数n转换为字符串
- 递归法将整数转换为字符串
- 将一个字符串转换为整数
- 将一个字符串转换为整数1
- 网络安全-【数字证书,证书链】,为什么12306订票要弹信任证书
- java多线程之生产者和消费者经典问题案例
- JSP配置多url-pattern的正确姿势
- 小图标素材
- 近期计划
- 将字符串转换为整数
- python-numpy.vectorize()
- html取消鼠标右击事件
- Opencv3.0中Mat与IplImage的转换
- 文件读写工具简单实现(二)--选择文件按钮
- 新网站seo优化中的外链建设思路
- 两个链表的公共第一个公共节点
- leetcode 115. Distinct Subsequences
- 面试的笔试题