将一个数字字符串转换成这个字符串对应的数字

来源:互联网 发布:中昌数据上证e互动 编辑:程序博客网 时间:2024/05/08 18:01
#include<stdio.h>#include<stdlib.h>#include<ctype.h>#include<math.h>double my_atof(char *str){double ret = 0.0;int sign = 1;char *pointer;while(*str != '\0'){if(isspace(*str)){str ++;}else if(*str == '-'){sign = -1;str ++;}else if(*str == '+'){str ++;}else if(*str == '.'){pointer = str;str ++;}else if((*str >= '0') && (*str <= '9')){ret = ret * 10.0 + (*str - '0');str ++;}}ret = sign * ret / pow(10,str-pointer-1);return ret;}int main(){double ret;char arr[100];scanf("%s",arr);ret = my_atof(arr);printf("%f\n",ret);return 0;}


 

 

编写一个函数,将一个数字字符串转换成这个字符串对应的数字(包括正浮点数,负浮点数)
eg:12.34  返回:12.34
eg:-123.4  返回:-123.4

0 0