博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
eetcode 之String to Integer (atoi)(28)
阅读量:4671 次
发布时间:2019-06-09

本文共 754 字,大约阅读时间需要 2 分钟。

字符串转为数字,细节题。要考虑空格、正负号,当转化的数字超过最大或最小是怎么办。

int atoi(char *str)      {          int len = strlen(str);          int sign = 1;          int num = 0;          int i = 0;          while (str[i] == ' '&& i < len)i++;          if (str[i] == '+')i++;          else if (str[i] == '-')          {              sign = -1;              i++;          }          for (; i < len; i++)          {              if (str[i]<'0'&&str[i]>'9')break;              if (num>INT_MAX / 10 || (num==INT_MAX / 10 && (str[i] - '0')>INT_MAX % 10))              {                  return sign == -1 ? INT_MIN : INT_MAX;              }              num = num * 10 + str[i] - '0';          }          return num*sign;      }
View Code

 

转载于:https://www.cnblogs.com/573177885qq/p/5519567.html

你可能感兴趣的文章
Class.isAssignableFrom(Class clz)方法 与 instanceof 关键字的区别
查看>>
php克隆 自动加载
查看>>
删除同目录下面txt文件(利用os,fnmacth模块)
查看>>
sqlserver 按日、周、月统计方法
查看>>
简单几步让CentOS系统时间同步
查看>>
Host aggregate分区
查看>>
Windows服务器上使用phpstudy部署PHP程序
查看>>
[唐胡璐]QTP框架 - 关键字驱动测试框架之三 - 对象库管理
查看>>
zoj 2112 树状数组 套主席树 动态求区间 第k个数
查看>>
4538: [Hnoi2016]网络
查看>>
186. [USACO Oct08] 牧场旅行
查看>>
一个屌丝程序猿的人生(三十九)
查看>>
Linux常用命令
查看>>
Spring之@Configuration配置解析
查看>>
Windows操作系统远程Linux服务器传输文件方法(以EasyDSS云平台、EasyNVR上传部署为例)...
查看>>
pip安装第三方库以及版本
查看>>
一、app更新提示后台接口开发-(2)数据库表设计
查看>>
利用data-src属性 更换图片
查看>>
Spring(3)
查看>>
SSM整合 mybatis多条件查询与分页
查看>>