double Atof(const char *pstr)
{
int idx = 0;
int sign = 0;
double num = 0.0;
double power = 1.0;
for(; pstr[idx] == ' '; idx++);//跳过空格
sign = (pstr[idx] == '-') ?-1 : 1;
if(pstr[idx] == '-')
{
idx++;
}
for(num = 0.0; pstr[idx] != '.'; idx++) //使用0.0可以强调其浮点性质,便于阅读
{
num = num * 10.0 + (pstr[idx] - '0');
}
if(pstr[idx++] == '.')
{
for(power = 1.0; pstr[idx] != '\0'; idx++)
{
num = num * 10.0 + (pstr[idx] - '0');
power *= 10.0;
}
}
return sign * num / power;
}
Atof 字符串转化为浮点数
猜你喜欢
转载自blog.csdn.net/qq_38035641/article/details/86086990
今日推荐
周排行