为什么此代码的输出给出值 100。请帮助我理解这种行为。
static void Main(string[] args)
{
int i = 100;
for (int n = 0; n < 100; n++)
{
i = i++;
}
Console.WriteLine(i); // This gives the Value 100 why?
}
我在 C 和 C# 编译器中运行了相同的代码。在 C 编译器中给出值 200 在 C# 编译器中给出值 100。
为什么同一段代码在两个编译器中的行为是这样的?