免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: shihyu
打印 上一主题 下一主题

[C] if(i == 0) 跟 if(!i) [复制链接]

论坛徽章:
0
21 [报告]
发表于 2009-01-19 16:35 |只看该作者

回复 #18 xiexiecn 的帖子

够BT

论坛徽章:
0
22 [报告]
发表于 2009-01-19 16:40 |只看该作者
有的人,写类似于if(!i)的“酷”代码的时候,会很兴奋,一兴奋,大脑运转的就快,效率就高~

论坛徽章:
0
23 [报告]
发表于 2009-01-19 16:51 |只看该作者
我喜欢写if(!i) 因为可以少敲几下键盘,呵呵。

论坛徽章:
0
24 [报告]
发表于 2009-01-19 20:32 |只看该作者
原帖由 shihyu 于 2009-1-18 00:40 发表
if(!i) vs if (i == 0)
if(!i) 效率高嗎?
謝謝

1)就效率来说
现在的编译器,都含复杂的优化,估计这两种写法,没有效率差异。
2)就代码的可读性来说
要看你的i是什么?如果你的i是当布扼量用,那是第一种可读性好;如果是当整数用,那该采用第二种。

论坛徽章:
0
25 [报告]
发表于 2009-01-20 09:26 |只看该作者
原帖由 xiexiecn 于 2009-1-19 14:03 发表
我就喜欢用if(!x),看着舒服,==看了别扭,很奇怪,呵呵。凡是要用==的地方,我尽可能换成!=。就跟一句诗,如果有两个字一样,那么就觉得别扭一样,两个等号让我很难受。很变态吧,

程序的可读性是就是当它可以被当作小说或者散文来看。至少要符合常人的逻辑。

论坛徽章:
1
天秤座
日期:2014-04-27 07:42:20
26 [报告]
发表于 2009-01-20 09:31 |只看该作者
我说大家无聊不无聊.....这两种写法编译后显然就是一回事,还有人煞有介事讨论那个效率高,真是搞笑. x == y这种写法傻瓜也不会弄错,是最和谐的写法.!x这种写法很有问题,如果成立条件是x ==  [表达式]呢?你也搞一个简略写法出来给大家瞧瞧?

[ 本帖最后由 A.com 于 2009-1-20 09:32 编辑 ]

论坛徽章:
0
27 [报告]
发表于 2009-01-20 11:32 |只看该作者
效率由实现自己决定,首先我问你,你觉得 exp!0 和 exp==0 两个表达式有什么语义上的区别吗?

论坛徽章:
0
28 [报告]
发表于 2009-01-20 11:46 |只看该作者
优化过后,就差不多了。
看情况使用。
if。。。。。
retrun;

/* In another condition do sth.*/

论坛徽章:
0
29 [报告]
发表于 2009-01-20 12:32 |只看该作者
原帖由 waternie 于 2009-1-20 11:46 发表
优化过后,就差不多了。
看情况使用。
if。。。。。
retrun;

/* In another condition do sth.*/


语义,语义!
假如两种写法的语义相同,再讨论风格就完全是令一回事。

论坛徽章:
0
30 [报告]
发表于 2009-01-20 12:54 |只看该作者
原帖由 langue 于 2009-1-20 12:32 发表


语义,语义!
假如两种写法的语义相同,再讨论风格就完全是令一回事。

嗯!不要抠这种细节。这样既没有可读性,也没有效率的提高,顶多是炫耀的手段。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP