c# - 为什么这个循环无限工作

标签 c# loops

这是 C# 中的一个简单的 while 循环,但它可以无限地工作。

int count = 1;
while (count < 10)
{
    count = count++;
}

为什么会这样?

最佳答案

表达式 count++ 返回 count 的原始值,然后递增该值。

所以你每次都用相同的值覆盖计数。只需这样做:

count++;

出于好奇,这里有一个链接,指向 Eric Lippert 的文章,该文章区分了运算符优先级和求值顺序——读起来很有趣:

http://blogs.msdn.com/b/ericlippert/archive/2009/08/10/precedence-vs-order-redux.aspx

关于c# - 为什么这个循环无限工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8298808/

相关文章:

c# - C# 中的嵌套锁定

c# - 在 for/foreach 循环中声明相同的对象

c# - 如何在ASP.net Core中添加js和css文件?

c - 将幂视为 C 语言中 2^2 的写法

c# - 如何比较 messagepack-cli 和 json.net 反序列化器的性能?

c# - 自 .NET 4.0 以来 XAML 绑定(bind)日期时间对象的自动更正行为?

java - 删除重复对象并求和字段值

javascript - 在异步循环中等待 promise

javascript - jQuery 循环每个来构建 Html 列表

python - 如何从odoo中的当前表单 View 获取记录到向导中?