【发布时间】:2019-01-17 22:14:51
【问题描述】:
我正在编写一些具有我以前从未见过的循环语法的 C# 代码:
for (;;)
{
//Do some stuff
}
没有init; condition; 或increment 的for 循环有什么作用?顺便说一句,在我尝试过的任何搜索引擎上,对于"for (;;) c#",在互联网上都很难找到有意义的搜索结果。
-埃里克
【问题讨论】:
-
If null is null then keep going. At the end , null + null是我一直以来的阅读方式。如果我没记错的话,这是一个无限循环 -
除非有休息、投掷或其他什么,否则它会继续吗?
-
@Symon 您的评论实际上是一个答案。请将其发布为答案,以便我们对其进行投票:)
-
空的条件语句才是真正的关键。如果没有条件,循环将永远运行,除非块内的某些东西终止它。我相信通常认为写
while(true)更有意,因为它明确说明了无限循环条件(并且while条件不是可选的)。 -
它在 C 的早期是半惯用的。(我记得有人写的一个“可爱”的宏看起来像
#define EVER ;;,它允许你写for(EVER) { /* code */ })。我记得在 80 年代的 C 代码中看到了很多,在 90 年代早期的 C 和 C++ 代码中并不多,在过去的一两年里也很少见。 是的,我这么老了,但我猜你正在查看的代码编写者也很老
标签: c#