请问C#中下面这两个代码运算次数是否一样,会被编译器优化吗?代码1:
for (int i = 0;i < 10; i++)
{
}代码2:
int a = 2;
int b = 5;
for (int i = 0; i < a * b; i++)
{
}在C++语言中是否一样?
谢谢!
for (int i = 0;i < 10; i++)
{
}代码2:
int a = 2;
int b = 5;
for (int i = 0; i < a * b; i++)
{
}在C++语言中是否一样?
谢谢!
2.循环次数是由a * b来决定的,每次循环都要计算一下乘积,如果在循环内部没有改变a,b的值的话,循环次数就是一致的.
这样的 魔数 说是没什么实际意义.....别个看不懂 .要用变量........既然效率低下,还用变鸟 岂不很麻烦.
int count = xxList.Count;
for(int i=0;i<count;i++) 这样写的效率是高于 for(int i=0;i<xxList.Count;i++)的
int a = 2;
int b = 5;
for (int i = 0; i < a * b; i++)
{
}
----改写成:代码2:
int a = 2;
int b = 5;
int result = a*b;
for (int i = 0; i < result ; i++)
{
}这样的话,效率和代码1是一样的了。
int a = 2;
int b = 5;
int result = a*b;
for (int i = 0; i < result ; i++)
{
}这样的话,效率就是一样的了。
int a = 2;
int b = 5;
for (int i = 0; int length = a * b;i < length ; i++)
{
//循环体
}
int a = 2;
int b = 5;
for (int i = 0, length = a * b;i < length ; i++)
{
//循环体
}