<strong><span style="font-size:24px;">
#include<stdio.h>
#include<math.h>
double my_atof(char *str)
{
int flag=0;
int count = 0;
int ret = 1;
double sum = 0;
while(*str != '\0')
{
if(*str == '-')
{
ret *= -1;
str++;
}
if(*str == '.')
{
flag = 1 ;
str ++;
}
if(*str >= '0' && *str <= '9')
{
sum = sum*10 + (*str - '0');
if(flag == 1)
{
count ++;
}
}
str++;
}
sum = sum /pow(10,count);
return ret*sum;
}
int main()
{
char p[]={" - 1 1 2 .3 5 4 6 "};
printf("%f\n",my_atof(p));
return 0;
}</span></strong>