递增++和递减-C ++中的运算符

增量运算符++对其操作数加1,而减量运算符-从其操作数减1。所以,

x = x+1; is the same as x++;

同样,

x = x-1; is the same as x--;

递增和递减运算符都可以在操作数之前(前缀)或跟随(后缀)。

x = x+1; can be written as ++x;

请注意,将增量或减量用作表达式的一部分时,前缀和后缀形式存在重要差异。如果使用前缀形式,则在休息表达式之前将执行递增或递减操作;如果使用后缀形式,则将在对完整表达式求值后执行递增或递减操作。

  •  在前缀版本(即++ i)中,i的值增加,并且表达式的值是i的新值。因此,基本上,它首先递增,然后为表达式分配一个值。

  • 在后缀版本(即i ++)中,i的值增加,但是表达式的值是i的原始值。因此,基本上,它首先为表达式分配一个值,然后递增变量。

示例

让我们看一些代码以获得更好的理解-

#include<iostream>
using namespace std;

int main() {
   int x = 3, y, z;
   y = x++;
   z = ++x;
   cout << x << ", " << y << ", " << z;
   return 0;
}

输出结果

这将给我们输出-

5, 3, 5

为什么是这样?让我们详细看一下-

  • 初始化x到3

  • 通过评估表达式x ++,为y赋值,即在递增x之前先递增x的值。

  • 递增x,然后为z赋值,我们可以通过计算表达式++ x来获得z的值,即递增后x的值。

  • 打印这些值