思路:
1.将字符串的每个数字提取出来
2.将每个元素后的’\0’(尾巴)去掉
int Myatoi(char *arr)
{
int tmp = 0;
while(*arr!='\0') //当arr[i]为'\0'时,循环结束
{
if(isdigit(*arr)) //判断一下是否为数字 若不为数字 则跳过
{
tmp = tmp*10+(*(arr)-'0');
arr++;
}
else
{
arr++;
}
}
printf("%d\n",tmp);
return tmp;
}
int main()
{
char arr[]="a456 78";
char brr[]="395 ,f4,rt8";
Myatoi(arr);
Myatoi(brr);
}
易错点:当char类型的字符串的元素提取出来后,每个字符后都有'\0' 不是只有字符串结尾有 记得去掉