资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

C++/C循环语句的效率问题

循环语句的效率:

10多年建站经验, 做网站、网站建设客户的见证与正确选择。成都创新互联提供完善的营销型网页建站明细报价表。后期开发更加便捷高效,我们致力于追求更美、更快、更规范。

C++/ C 循环语句中,f or语句使用频率最高,whi l e语句其次,do语句很少用。提高循环体效率的基本办法是降低循环体的复杂性。

1.在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的循环放在最外层,以减少CPU跨切循环层的次数。

例1:

程序1:

for (row = 0; row<100; row++)

{

for (col = 0; col<5; col++)

{

sum = sum + a[row][col];

}

}

程序2:

for (col = 0; col<5; col++)

{

for (row = 0; row<100; row++)

{

sum = sum + a[row][col];

}

}

分析:程序1低效率,长循环在最外层;程序2高效率,长循环在最内层。

2.如果循环体内存在逻辑判断,并且循环次数很大,宜将逻辑判断移到循环体的外面。

程序1:

for (i = 0; i

{

if (condition)

{

DoSomething();

}

else

{

DoOtherthing();

}

}

程序2:

if (condition)

{

for (i = 0; i < N; i++)

{

DoSomething();

}

}

else

{

for (i = 0; i < N; i++)

{

DoOtherthing();

}

}

分析:程序1效率低但程序简洁;程序2效率高但程序不简洁.

补充:

goto语句:能够从多重循环体中咻地一下子跳到外面,用不着写很多次的break语句;由于goto语句存在很多隐患,因此主张少用、慎用goto 语句。

如:

{

{

{

goto error;

}

}

}

error;

 


文章名称:C++/C循环语句的效率问题
URL链接:http://www.cdkjz.cn/article/jdiohg.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220