我尝试了以下
i=0;
if (i++ % Max_Col_items == 0 && i !=0)
{
}
并发现它在中间增加i
i % Max_Col_items == 0;
i=i+1;
i !=0;
当我尽管它会在最后增加i
:
i % Max_Col_items == 0;
i !=0;
i=i+1;
任何人都可以找到i++
在C#中如何运作的解释吗?
答案 0 :(得分:3)
i++
将为您提供原始值,而不是递增值。您将在i
的下一次使用时看到更改。如果要获得递增的值,请使用++i
。
答案 1 :(得分:0)
i++
会立即递增i
的值,但会计算为递增前的值。
在代码行结束之前,它不会保持i
的值不变,这似乎是您所期望的。
答案 2 :(得分:0)
那是因为(正如你正确指出的那样)
i%Max_Col_items == 0;
本身就是一项操作。一旦该操作线结束(值为i),就完成增量。