将int变量转换为double

Nis*_*dru 9 c#

嗨,我是初学C#程序员,我正在尝试创建一个计算器.我似乎无法弄清楚如何将一个int变量转换为double.这是我到目前为止:

public void oImpartire() {
    if (rezultat % value == 0)
    {
        rezultat /= value;
    }
    else {
       (double)rezultat /= value;  //this should be double but I get error
    }
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

编辑:结果和值都是int变量

小智 11

(double)rezultat /= ...
Run Code Online (Sandbox Code Playgroud)

不好.转换表达式的结果始终是rvalue,即无法分配的值.相关:您无法更改表达式的类型(您可以强制转换它,但这不会真正改变它的类型,只是暂时作为另一种类型).一旦你将你的变量声明为a int,你将无法在其中存储一个双重 - 但是你施放了该分区等,它最终会被截断.

您很可能必须引入一个double临时变量来存储除法的结果.


teh*_*ine 8

   Convert.ToDouble(int);
Run Code Online (Sandbox Code Playgroud)

http://msdn.microsoft.com/zh-CN/library/system.convert.todouble.aspx

  • @ user985482您不能转换变量的类型。C#是静态类型的。 (2认同)