函数含义:实现字符串向整数的转换。字符串开头直接跳过空白字符和tab,如果有+-号则判断是正负,然后+-号后面是数字字符的话则转换成数字,不是则退出。
即必须为下列形式:" -789"
否则输出0。
#include <stdio.h>
#include <stdlib.h>
int atoi_my(char*s)
{
char* p = s;
int num = 0,sign;
while(*p == ' '|| *p == '\t')
++p;
sign = (*p == '-')?-1:1;
if(*p == '-'||*p=='+')
++p;
while(*p>='0'&&*p<='9')
{
num = num*10 + *p - '0';
++p;
}
return sign*num;
}
int main()
{
char s[100];
gets(s);
int n = atoi_my(s);
printf("%d", n);
return 0;
}