首页 > 其他 > 详细

atoi 函数自实现

时间:2018-12-01 16:29:12      阅读:179      评论:0      收藏:0      [点我收藏+]
 1 #include <stdio.h>
 2 /*
 3 编码实现字符串转整型的函数(实现函数 atoi 的功能)。如将字符串“123”转化为 123,
 4 “-0123”转化为-123
 5 */
 6 int myatoi(const char *p)
 7 {
 8     int val = 0;
 9     int sign;
10     while(*p ==  ||*p == \t)p++;
11     if(*p == -||*p == +)
12     {
13         sign = (*p == -?-1:1);//必须用括号,= 和 ==  优先级不一样
14         p++;
15     }
16     
17     while(*p-0>=0&&*p-9<=0)
18     {
19         if(*p == 0)//考虑符号 后第一个字符为‘0‘的情况-0123  没有这样的数字吧,直接归0
20             return 0;
21         else
22             val = val*10+(*p-0);    
23         p++;
24     }
25     return sign*val;
26     
27 }
28 int main(void)
29 {
30     char *p = "        -123a44sdfdf";
31     int val = myatoi(p);
32     printf("val = %d\n",val);
33     
34     return 0;
35 }

 

atoi 函数自实现

原文:https://www.cnblogs.com/wangchaomahan/p/10049811.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!