First:按照题目要求将一个字符串转换成一个整数,首先忽略掉前面的“+”“-”后,主要的逻辑就是将字符串
中的元素一个一个拿出来转换成整数然后循环乘10后进行累加就可以拿到转换之后的整数。
而一个字符a转换成整数只要他满足 ‘0’ <= a <= ‘9’ 这个条件即可通过 ‘a’ - ‘0’ 的方式进行转换(ASCII码的差值)

Second: 至于符号问题,我们只需要定义一个变量 flag =1,然后加上一个判断就好了:如果当前拿出来的是“+”,那么最后的返回值就是转换后的整数乘 flag = 1;如果拿出来的是“-”,那么将 flag = -1,那么最后的返回值就是转换之后的整数乘 flag = -1;如果取出来的字符不满足上面的两个条件,那么按照题目要求直接返回 0 就可以了。

Last:在加上一个判断,判断最后的返回值 ret 是否在 int 的表示范围之内,如果在那么直接返回就好,否则
就按要求返回 0 。

源码

class Solution
{public:long long StrToInt(string str){if (str.empty())return 0;//当 str 为空时直接返回 0 string::iterator sit = str.begin();long long ret = 0;int flag = 1;while (sit != str.end()){ret *= 10;if (*sit >= '0' && *sit <= '9'){ret += *sit - '0';}else if (*sit == '-' || *sit == '+'){if(*sit == '-')flag = -1;}else{return 0;}  sit++;}ret = ret * flag;cout << INT_MAX << "  " << INT_MIN << endl;if(ret > INT_MAX || ret < INT_MIN)//判断 ret 是否在 int 表示的范围之内{return 0;}return ret;}
};

编程题:将字符串转换成整数 C++实现相关推荐

  1. 【每日一题】字符串转换成整数

    题目来源 牛客网 链接:字符串转换成整数 题目描述 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数. 数值为0或者字符串不是一个合法的数值则返回0. 输入描述: 输入一个字符串,包括数 ...

  2. 程序员面试题精选100题(17)-把字符串转换成整数[算法]

    题目:输入一个表示整数的字符串,把该字符串转换成整数并输出.例如输入字符串"345",则输出整数345. 分析:这道题尽管不是很难,学过C/C++语言一般都能实现基本功能,但不同程 ...

  3. 程序员编程艺术第三十 三十一章 字符串转换成整数,通配符字符串匹配

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 第三十~ ...

  4. 程序员编程艺术第三十~三十一章:字符串转换成整数,通配符字符串匹配

    第三十~三十一章:字符串转换成整数,带通配符的字符串匹配 前言 之前本一直想写写神经网络算法和EM算法,但写这两个算法实在需要大段大段的时间,而平时上班,周末则跑去北大教室自习看书(顺便以时间为序,说 ...

  5. Leetcode错题本1-实现一个 atoi 函数,使其能将字符串转换成整数。

    题目描述 请你来实现一个 atoi 函数,使其能将字符串转换成整数. 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止.接下来的转化规则如下: 如果第一个非空字符为正或者 ...

  6. 字符串转换成整数,带通配符的字符串匹配

    之前本一直想写写神经网络算法和EM算法,但写这两个算法实在需要大段大段的时间,而平时上班,周末则跑去北大教室自习看书(顺便以时间为序,说下过去半年看过的自觉还不错的数学史方面的书:<数理统计学简 ...

  7. 放蛋糕,字符串转换成整数

    问答题 问答题1:关于"深拷贝",下列说法正确的是? (A) 会拷贝成员数据的值和会拷贝静态分配的成员对象 (B) 只会拷贝成员数据的值 (C) 只会拷贝静态分配的成员对象 (D) ...

  8. 字符串转换成整数,字符串匹配问题

    本文转自csdn大神v_JULY_v的博客 地址: http://blog.csdn.net/v_july_v/article/details/9024123 阅读心得:自己原先想得太天真了... 第 ...

  9. 字符串转换成整数,通配符的字符串匹配问题

    http://blog.csdn.net/v_july_v/article/details/9024123#comments 前言 之前本一直想写写神经网络算法和EM算法,但写这两个算法实在需要大段大 ...

  10. oracle 转化为整数,字符串转换成整数——从源码学习

    字符串转换成整数:输入一个表示整数的字符串,把该字符串转换成整数并输出,例如输入字符串"345",则输出整数345. 在笔试面试中,atoi 即「字符串转换成整数」是一个经典问题了 ...

最新文章

  1. qt 16进制字符串和十六进制数_Python字符串类型及其操作
  2. 自学python前戏
  3. 五个问答,告诉你阿里云对象存储如何助力钉钉战胜业务洪峰
  4. 程序员回家过个年,真心不要容易
  5. 国内CDH的MAVEN代理
  6. Spring源码系列:依赖注入(二)createBean
  7. 一分钟教你学会配置eslint,还在为风格单双引号,对象末位逗号要不要,引用各种报错而烦恼?(建议收藏!详细中文注释)...
  8. 【遥感图像处理软件】ArcGIS Pro 使用总结
  9. vim粘贴代码格式变乱
  10. 怎么把python程序安装到别人电脑上_如何在自己的电脑上安装python的idle版 - 卡饭网...
  11. 关于单机winform数据库 数据存储
  12. autocad 注册表
  13. QT设置按钮QPushButton上图片加文字
  14. ols残差_多元回归方程的OLS残差
  15. BlueStacks让 Android 应用跑在 Windows 平台上!
  16. linux服务器安装php7_在CentOS 8上安装PHP 7.2、PHP 7.3、PHP 7.4的方法
  17. 妙用自定义注解,一行代码搞定大功能(文末赠书)
  18. Educoder 机器学习 决策树使用之使用决策树预测隐形眼镜类型
  19. 统计结合python_python 练习(一)代码统计工具的实现
  20. python2.7入门---XML解析

热门文章

  1. Android源码编译之Nexus5真机编译
  2. 上万台测温设备的数字化管理,从Shifu接入温度计的数字孪生开始
  3. 路上发现一只被压扁的乌龟,不料竟发生这么诡异一幕
  4. ASP.NET页面打印技术的总结
  5. 有刷、有感和无刷无感电机的使用心得
  6. Nest.js中的设计模式——装饰器
  7. 分享--python学习网站论坛大全
  8. 【hive报错】SemanticException Failed to breakup Windowing invocations into Groups
  9. 【网络转载】Sybase数据库基础知识
  10. c语言库函数strncmp,C语言 strncmp