您的位置:首页 > 其它

编写一个函数,将一个数字字符串转换成这个字符串对应的数字(包括正浮点数、负浮点数)

2015-03-11 10:38 477 查看
//编写一个函数,将一个数字字符串转换成这个字符串对应的数字(包括正浮点数、负浮点数)
#include<stdio.h>
#include<math.h>
double my_atof(char *str)
{
int    b = 0;
int    flag=0;
int    count = 0;
int    reselt = 1;
double num = 0;

while(*str != '\0')
{
if(*str == '+')
{
*str++;
}

if(*str == '-')
{
reselt = -1;
*str++;
}

if(*str == '.')
{
flag = 1 ;
*str ++;
}

if(*str >= '0' && *str <= '9')
{
num = num*10 + (*str - '0');

if(flag == 1)
{
count ++;
}
}

*str++;
}

num = reselt*(num /pow(10,count));

return num;
}

int main()
{
char *p=" -12 .3  4  ";

double ret = my_atof(p);

printf("%f\n",ret);

return 0;
}


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐