What is the difference between i++ and ++i?
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
In C# what is the difference between myInt++ and ++myInt?
复制:在C中,myint++和+myint有什么区别?
在.NET中。
更新:任何人都可以发布一个要使用的示例场景,因为这两个场景看起来非常类似于我。
i++ 是一个后增量,这意味着这个表达式返回i的原始值,然后将其递增。++i 是一个预增量,这意味着这个表达式使i递增,并返回新值。
除了C之外,许多语言都支持这种表达行为。
1 2 3 4 | int i = 0; Console.WriteLine(++i); // prints 1 Console.WriteLine(i++); // prints 1 also Console.WriteLine(i); // prints 2 |
您可以查看下面的示例。
1 2 3 4 5 6 7 8 9 10 11 12 | int a = 0; int i = 5; //Value of a: 0, i: 5 a=i++; //Value of a: 5, i: 6 a=++i; //Value of a: 7, i: 7 |
让它更清楚一点:
1 2 3 4 5 6 7 8 9 | i = 0 print i++ // prints 0 and increases i AFTERWARDS print i // prints"1" i = 0 print ++i // increases i FIRST, and then prints it ("1" ) print i // prints"1" |
正如您所看到的,不同之处在于当变量的值被更新时,在它被读取之前或之后,并在当前语句中使用。