循环 n 次,除了最常用的 for (int i = 0; i < n; ++i) {...} 之外,还可以写 while (n-- > 0) {...} 和 while (--n >= 0) {...}。这两种写法的区别在于,如果 n 是 unsigned 类型,那么后面那种写法会导致infinite loop。今天就被这只小 bug 咬了一口:) 也怪自己偷懒,不爱写 for 循环。
Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=764
本文探讨了三种循环写法:for循环、while(n-->0)及while(--n>=0)。指出当n为unsigned类型时使用while(--n>=0)可能导致无限循环。作者分享了自己因偏好简洁写法而遭遇的小bug。

被折叠的 条评论
为什么被折叠?



