📜  什么是 ++i 和 i++ (1)

📅  最后修改于: 2023-12-03 14:49:08.084000             🧑  作者: Mango

什么是 ++i 和 i++

在编程中,++i 和 i++ 都是自增运算符,用于增加变量的值。它们的区别在于它们返回的值不同。

i++

i++ 是后缀自增运算符。它将变量 i 的值增加 1,并返回原来的值。

int i = 1;
int j = i++;  // j = 1, i = 2

在上面的代码片段中,变量 i 的值先被赋给变量 j,然后 i 的值增加 1。因此, j 的值为 1,而 i 的值为 2。

++i

++i 是前缀自增运算符。它将变量 i 的值增加 1,并返回增加后的值。

int i = 1;
int j = ++i;  // j = 2, i = 2

在上面的代码片段中,变量 i 的值先被增加 1,然后赋给变量 j。因此, j 的值为 2,而 i 的值也为 2。

区别

在大多数情况下,++i 和 i++ 都可以用来增加变量的值。但是,在某些情况下,它们的区别是很重要的。

int i = 1;
int j = i++ * 2;  // j = 2, i = 2

在上面的代码片段中,变量 i 的值先被用于计算 j 的值,然后 i 的值增加 1。因此, j 的值为 2,而 i 的值为 2。

int i = 1;
int j = ++i * 2;  // j = 4, i = 2

在上面的代码片段中,变量 i 的值先被增加 1,然后用于计算 j 的值。因此, j 的值为 4,而 i 的值也为 2。

总结

总之,++i 和 i++ 都是自增运算符,用于增加变量的值。它们的区别在于它们返回的值不同。 i++ 是后缀自增运算符,将变量 i 的值增加 1,并返回原来的值。 ++i 是前缀自增运算符,将变量 i 的值增加 1,并返回增加后的值。在大多数情况下,它们可以互换使用,但在某些情况下,它们的区别是很重要的。