[送分题] 哪种循环速度快?解决方案


[送分题] 哪种循环速度快
最近做对速度很敏感的程序,用到大量循环.想知道那种速度更快.

循环体内执行语句相同.
int   i;

//   1
for   (i   =   0;   i   <   256;   i++)
{
//....
}

//2
i   =   256;
while(i--)
{
//......
}

//3
i   =   0;
do
{
//....
}while(i++   <   255);


基本概念 C++/VC 程序开发

我就是⑨~ 12 years, 2 months ago


do {

if(!...) break;
...
if(!...) break;
...
if(!...) break;
...
}
while(false);
这个好啊,我也用,我基本就拿他代替goto,

Rgmsk answered 12 years, 2 months ago


for(register int i = 0; i < 256; i++)更好一点
不过不加register,优化时也可能自动加上

goddnes answered 12 years, 2 months ago


for最快,这个在Pascal里好像也是
测一下就知道了

法老控D轨迹 answered 12 years, 2 months ago


奇怪了,怎么都喜欢用for 我也是...



哆啦炼金术师 answered 12 years, 2 months ago


我习惯有while(){}感觉还可以.

铁蓝色D意志 answered 12 years, 2 months ago


我只在以下情况下用 do...while, 比用 for 稍方便

do {

if(!...) break;
...
if(!...) break;
...
if(!...) break;
...
}
while(false);

我真名叫Th answered 12 years, 2 months ago


for (i = 0; i < 256; ++i)
{
//....
}
for(int i = 256; i> 0 ;--i)
{}

史莱姆的吐槽 answered 12 years, 2 months ago


这种优化?
没有必要优化,
更为重要的是优化循环内的代码!!!

可不可以,直接访问存储地址。。。


你们最讨厌了 answered 12 years, 2 months ago


2比3快 至于1是否比2快 不知道

娅拉娜伊卡 answered 12 years, 2 months ago


看能不能改成少用循环的算法

奴家感到很为难 answered 12 years, 2 months ago


for快

水疗抽水机 answered 12 years, 2 months ago


这种优化?
没有必要优化,
更为重要的是优化循环内的代码!!!

薛定谔的闪闪 answered 12 years, 2 months ago


大师都建议用for

这个速度是编译器决定的吧

xuelide answered 12 years, 2 months ago

Your Answer