运算符'^'不能应用于'double'和'double'类型的操作数

时间:2011-10-02 00:12:12

标签: c#

我有这段代码:

private void t_Tick(object source, EventArgs e)
    {
        double anInteger;
        anInteger = Convert.ToDouble(label1.Text);
        anInteger = double.Parse(label1.Text);
        double val1;
        double val2;
        double answer;
        double previous_val;
        previous_val = Convert.ToDouble(label1.Text);
        previous_val = double.Parse(label1.Text);
        val1 = anInteger;
        val2 = ((((((previous_val ^ 1.001)) / 24) - ((previous_val / 24) / 60)) / 10));
        answer = val1 + val2;


        label1.Text = answer.ToString();
    }

我收到错误“运算符'^'不能应用于行''''和'double'类型的操作数:

val2 = ((((((previous_val ^ 1.001)) / 24) - ((previous_val / 24) / 60)) / 10));

有没有人有任何解决方案?

3 个答案:

答案 0 :(得分:31)

Math.Pow(previous_val, 1.001);

将解决您的问题。这就是如何使用双倍权力的方式。

答案 1 :(得分:8)

^是按位运算符XOR。双重类型没有任何意义。

你的意图是什么?

答案 2 :(得分:4)

如果您希望将Value1提升为Value2

的幂

使用:

Math.Pow(Value1,Value2)

在你的例子中:

Math.Pow(previous_val,1.001)