字符串转整型数字

代码 代码 1150 人阅读 | 0 人回复

<
字符串转整型数字(面击进进标题问题)
  形貌
  将一个字符串转换成一个整数,请求不克不及利用字符串转换整数的库函数。 数值为0大概字符串没有是一个正当的数值则返回0
输进形貌:
  输进一个字符串,包罗数字字母标记,能够为空
返回值形貌:
  假如是正当的数值表达则返回该数字,不然返回0
示例1
  输进:"+2147483647"
  返回值:2147483647
示例2
  输进:“1a33”
  返回值:0
标题问题阐发:1、起首需求明白的是,甚么是正当的数值表达式,假如该字符串中露有随便字母,则表白该字符串没有是正当的数值表达式;假如是正当的数值表达式,第一个字符能否是标记位,那是要停止判定的,假如是标记位,前面实践数值的少度则要加1。
     2、正在判定完以上的步调后,就能够将字符转换为数字,并存储到事前筹办的变量中,然后轮回掏出字符串中的每一个数字。
解题
   a:先写一个IsLetter函数,用去判定某个字符能否为字母,假如该字符串中的某个字符为字母,间接返回0便可,以是正在函数的开端,先遍历一遍本字符串,假如有字母,则间接返回0。
   b:假如函数持续往下走,则阐明字符串中出有字母,是正当的数值表达式,此时要判定的是字符串中的第一个字符能否为标记位(+、-),我们那里设置一个标识表记标帜位flag,假如字符串的第一个字符是+,则flag为1,假如第一个字符为-,则flag为-1,假如第一个字符没有是标识表记标帜位,则默许为正数,则flag连结为1。
   c:界说ret、index、str_size三个变量用去存值大概记载疑息,具体疑息看代码正文。
   d:进进for轮回对每一个字符的停止整型转换并做响应的处置。
[code]class Solution {public:    bool IsNumber(char ch)        {                if (ch >= &#39;0&#39; && ch = &#39;a&#39; && ch = &#39;A&#39; && ch <span class="token operator">
1、本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,按照目前互联网开放的原则,我们将在不通知作者的情况下,转载文章;如果原文明确注明“禁止转载”,我们一定不会转载。如果我们转载的文章不符合作者的版权声明或者作者不想让我们转载您的文章的话,请您发送邮箱:Cdnjson@163.com提供相关证明,我们将积极配合您!
2、本网站转载文章仅为传播更多信息之目的,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证信息的正确性和完整性,且不对因信息的不正确或遗漏导致的任何损失或损害承担责任。
3、任何透过本网站网页而链接及得到的资讯、产品及服务,本网站概不负责,亦不负任何法律责任。
4、本网站所刊发、转载的文章,其版权均归原作者所有,如其他媒体、网站或个人从本网下载使用,请在转载有关文章时务必尊重该文章的著作权,保留本网注明的“稿件来源”,并自负版权等法律责任。
回复 关闭延时

使用道具 举报

 
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则