Increment ++ and Decrement -- Operator as Prefix and Postfix (前缀和后缀的递增 ++ 和递减 -- 运算符)

在编程中(Java、C、C++、JavaScript 等),递增运算符 ++ 将变量的值增加 1。类似地,递减运算符 -- 将变量的值减少 1。

a = 5
++a;          // a becomes 6
a++;          // a becomes 7
--a;          // a becomes 6
a--;          // a becomes 5

到目前为止很简单。但是,当这两个运算符用作前缀和后缀时,存在一个重要的区别。


++ 和 -- 运算符作为前缀和后缀

  • 如果在前缀中使用 ++ 运算符,例如:++var,则 var 的值会增加 1;然后返回该值。
  • 如果在后缀中使用 ++ 运算符,例如:var++,则首先返回 var 的原始值;然后 var 的值增加 1。

-- 运算符的工作方式与 ++ 运算符类似,只是 -- 将值减少 1。

让我们在 C、C++、Java 和 JavaScript 中看看 ++ 作为前缀和后缀的用法。


示例 1:C 编程

#include <stdio.h>
int main() {
   int var1 = 5, var2 = 5;

   // 5 is displayed
   // Then, var1 is increased to 6.
   printf("%d\n", var1++);

   // var2 is increased to 6 
   // Then, it is displayed.
   printf("%d\n", ++var2);

   return 0;
}

示例 2:C++

#include <iostream>

using namespace std;

int main() {
   int var1 = 5, var2 = 5;

   // 5 is displayed
   // Then, var1 is increased to 6.
   cout << var1++ << endl;

   // var2 is increased to 6
   // Then, it is displayed.
   cout << ++var2 << endl;

   return 0;
}

示例 3:Java 编程

class Operator {
    public static void main(String[] args) {
        int var1 = 5, var2 = 5;

        // 5 is displayed
        // Then, var1 is increased to 6.
        System.out.println(var1++);

        // var2 is increased to 6
        // Then, var2 is displayed
        System.out.println(++var2);
    }
}

示例 4:JavaScript

let var1 = 5, var2 = 5;

// 5 is displayed
// Then, var1 is increased to 6
console.log(var1++)

// var2 is increased to 6
// Then, var2 is displayed
console.log(++var2)

所有这些程序的输出将是相同的。

输出

5
6
你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战