bool IsZero(double v)
{
   if( v == 0 )
    { 
       return true;
    }
   else 
    {
       return false;
    }}上面的应用安全吗?

解决方案 »

  1.   

    出来的都是false...double之间的比较都是比较差值的绝对值是否在一定范围内,如果是,就认为相等
      

  2.   

                double k = 0;
                if (k == 0)
                {
                    MessageBox.Show("k is zero");
                }
                else
                {
                    MessageBox.Show("k is none zero");
                }
    我用vs2005 做了实验,但出来的结果是正确的
      

  3.   

    如果你觉得有问题,可以先转换下类型。Convert.ToInt32(Math.Round(k, 0))或者把0Convert.ToDouble