字符串转double

double string2Double(char *str)

{

    double result = 0.0;

    int dotDist = 0;

    while (isdigit(*str) || *str == '.)

    {

        if (*str == '.')

        {

            if (dotDist == 0)

    {

      dotDist = 1;

    }

    else

    {

      return result;

    }

        }

    else

    {

      if (dotDist == 0)

      {

        result = result * 10 + (*str - '0');

      }

      else

      {

        result += ((*str - '0') / pow (10.0, dotDist));

        dotDist++;

      }

     }

    }

  str++;

    }

  return result;

}

posted @ 2012-09-03 15:44  lightex  阅读(367)  评论(0)    收藏  举报