if else 以下两种用法 那种高效
时间:2011-12-28
来源:互联网
void fun1(void) { int var; if (var > 0) { //执行这里大约的100条语句 } else { //执行几条语句 } return ; } void fun2(void) { int var; if (!(var>0) { //执行几条语句 return ; } //执行这里大约的100语句 }
请问 上面的两个 函数 那个函数执行的效率高
ps:两个函数里面的代码是一样的 只是 排列方式不一样 位置不一样
作者: huangqiyin 发布时间: 2011-12-28
上面第2段代码执行的快,编译后代码少一点点儿,效率高。
第1段代码的写法是可读性与可维护性的考虑,对于非C++等系统层编码的推荐写法。
作者: sagahu0359 发布时间: 2011-12-28
效率不是个简单的执行的快慢(编译后少相对执行快),而是个执行速度、资源占用等的综合。
上面第2段代码执行的快,编译后代码少一点点儿,效率高。
第1段代码的写法是可读性与可维护性的考虑,对于非C++等系统层编码的推荐写法。
我是写嵌入式代码的,目标机是arm7的 在某个局部,对时间的要求极高,所以 这里的时间 要求性极高!
作者: huangqiyin 发布时间: 2011-12-28
作者: udbwcso 发布时间: 2011-12-28
也许可以考虑一下指令流水线
哥们具体点!
作者: huangqiyin 发布时间: 2011-12-28
作者: wanyuan19890515 发布时间: 2011-12-28
作者: mingliang1212 发布时间: 2011-12-28
作者: neolyao 发布时间: 2011-12-28
高质量的编程要求将最可能出现的情况放在前面。这符合人的思维习惯,也符合性能提升的要求。
顺序执行的时候,流水线的利用率是最高的。遇到跳转的时候,流水线就得清空,然后将跳转后的指令依次装入流水线。
if...else...通常编译成条件判断,如果条件成立,则执行后面的指令,如果条件不成立,跳转到else处...。
作者: finewind 发布时间: 2011-12-28
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28