标签:
//编写一个函数,将一个数字字符串转换成这个字符串对应的数字(包括正浮点数、负浮点数) //例如:“12.34“ 返回12.34. " -12.34" 返回12.34 #include<stdio.h> #include<math.h> #include<assert.h> double my_atof(char *str) { int flag=0; int count = 0; int ret = 1; double sum = 0; assert(NULL!=str); 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[]=" -52.36 "; printf("%f\n",my_atof(p)); return 0; }
<img src="http://img.blog.csdn.net/20150403140644994?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZG91ZG91d2ExMjM0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
【C语言】编写一个函数,将一个数字字符串转换成这个字符串对应的数字(包括正浮点数、负浮点数)
标签:
原文地址:http://blog.csdn.net/doudouwa1234/article/details/44854709