查看: 3340|回复: 15
收起左侧

[教程经验] 两种for循环的优缺点比较

火浴 2020-3-31 17:10:28 | 显示全部楼层 |阅读模式
邀请回答

马上注册,享受更多特权

您需要 登录 才可以下载或查看,没有帐号?立即注册   

x
以下两种for循环的优缺点                                            
  1. for (i=0;i<N;i++)
  2. {
  3.        if(condition)
  4.                      DoSomething( );
  5.        else
  6.               DoOtherthing( );
  7. }
复制代码
  1. if(condition)
  2. {
  3.        for(i=0;i<N;i++)
  4.                       DoSomething( );
  5. }
  6. else
  7. {
  8.        for(i=0;i<N;i++)
  9.               DoOtherthing( );
  10. }
复制代码
第一个程序:优点:程序简洁
                     缺点:多执行了N-1次逻辑判断,并且打断了循环“流水线”作业,使得编译器不能对循环进行优化处理,降低了效率。





第二个程序:优点:循环效率高
                    缺点:程序不简洁

已有 0 人打赏作者

回复 邀请回答送花

使用道具 举报

火浴 2020-4-1 08:31:29 | 显示全部楼层

回复 送花

使用道具 举报

火浴 2020-4-1 08:49:05 | 显示全部楼层

回复 送花

使用道具 举报

火浴 2020-4-1 09:04:04 | 显示全部楼层
Lihoon 发表于 2020-4-1 08:54
为啥第一种方式多执行了N-1次?

因为每次循环都要判断condition条件是否成立!
回复 送花

使用道具 举报

Lihoon 2020-4-1 09:13:15 | 显示全部楼层
火浴 发表于 2020-4-1 09:04
因为每次循环都要判断condition条件是否成立!

合理的,明白了,谢谢楼主分享
回复 送花

使用道具 举报

火浴 2020-4-1 09:14:08 | 显示全部楼层
回复 送花

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册   

本版积分规则

有技术问题,就上汇川技术社区

INOVANCE汇川技术 公众号

扫码下载掌上汇川APP

全国服务热线:8:30-17:30

4000-300124

苏州地址:江苏省苏州市吴中区越溪友翔路16号

深圳地址:深圳市龙华新区观澜街道高新技术产业园汇川技术总部大厦

Copyright © 2003-2100 汇川技术 Powered by Discuz! X3.4 ( 苏ICP备12002088号 )
快速回复 返回列表 返回顶部