近日,在写C#程序的时候遇到了个很奇怪的问题:开方运算竟然比加法运算快!?

代码如下:

int stime1 = DateTime.Now.Second * 1000 + DateTime.Now.Millisecond;
int j = 0;
int k = 0;
for (int i = 0; i < 5000000; i++)
{
    k = j + 10000;
}

int etime1 = DateTime.Now.Second * 1000 + DateTime.Now.Millisecond;
//add_count.Text = (etime1 - stime1).ToString();
add_count.Text = etime1.ToString() + "&nbsp-" + stime1.ToString() + "&nbsp=" + (etime1 - stime1).ToString();


int stime2 = DateTime.Now.Second * 1000 + DateTime.Now.Millisecond;
for (int i = 0; i < 5000000; i++)
{
    System.Math.Sqrt(20);
}
int etime2 = DateTime.Now.Second * 1000 + DateTime.Now.Millisecond;
//sqr_count.Text = (etime2 - stime2).ToString();
sqr_count.Text = etime2.ToString() + "&nbsp-" + stime2.ToString() + "&nbsp=" + (etime2 - stime2).ToString();

很简单的几行代码,但跑出来的结果,让人很迷惑。

C#开方运算比加法运算快?

本想开方运算肯定比加法运算慢很多,而结果中开方运算反而比加法运算快!反复刷新N次,结果还是差不多。真是无语了~~~

但是在我的另外一个项目中,用的是相同一段代码,结果是比较正常的:

C#开方运算比加法运算快?

哪位高手能解释一下,小弟先行谢过了。

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-16
  • 2021-10-30
  • 2021-06-23
  • 2021-05-22
  • 2021-08-22
猜你喜欢
  • 2021-07-31
  • 2022-12-23
  • 2021-11-14
  • 2022-01-05
  • 2021-06-09
  • 2021-09-23
  • 2022-12-23
相关资源
相似解决方案