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. FillMode详解
  2. iKair:放弃硬件制造,切入上游去“送水”的逻辑
  3. android RefBase、sp、wp
  4. 14nm芯片技术突破 中国集电关键装备实现从无到有
  5. leetcode 213. 打家劫舍 II(dp)
  6. VMWare虚拟机下为Windows Server 2012配置静态IP(NAT方式)
  7. 自学前端,需要学习哪些知识点?学多久可以入职前端工程师?
  8. silverlight安装后网页_纯干货收藏|两个技巧教你完美长截屏网页!
  9. Java练习 SDUT-2561_九九乘法表
  10. 2.kafka 安装
  11. 《Advanced .NET Debugging》 读书笔记 Listing 3-6: 使用sxe在程序载入mscorwks之后停下来载入sos...
  12. C++:关于类以及h/cpp文件的一些实用知识
  13. [史]《全球通史》上册——摘记
  14. 牛客习题总结38(7月13日)
  15. 你为什么被拒?盘点面试失败的3大原因
  16. “该内存不能为读写”解决方法
  17. 别人的面经(算法方向)
  18. C指针之初始化(三)
  19. 当当网系统分级与海量信息动态发布实践
  20. 原生js快速查找指定元素

热门文章

  1. 浪潮信息赋能昆明地铁实现云边协同管理
  2. python爬取网易云音乐薛之谦歌词数据,生成词云
  3. Linx常见基本指令
  4. bezier + spline
  5. 2023年要想翻身赚大钱,网络安全是你必须要知道的“薪”机遇
  6. PAT (Basic Level) Practice (中文)1086 就不告诉你 (15分)
  7. 算法导论习题(1):摔杯子
  8. 新的勒索软件在第一个月就有十名受害者
  9. 321_MediaType Media Type 是什么
  10. Apipost,更懂中国程序员的接口调试神器