关于 " i=i++"是否等价于"i=i+1"的问题探讨 -Java版/C版

Posted zhazhaacmer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于 " i=i++"是否等价于"i=i+1"的问题探讨 -Java版/C版相关的知识,希望对你有一定的参考价值。

如题 (总结要点)

  • 假设i=1 ,那么 i=i++ 的结果也就是2, 对吗? 不对,是1.
    -总结如下:
    技术图片

  • 测试过程如下:

1.java版

public class Test 
    public static void main(String[] args) 
        int i=1;
        i=i++;             
        System.out.println("i=="+i);
        int j=i++;          
        int k=i+ ++i * i++;  
        System.out.println("i="+i);
        System.out.println("j="+j);
        System.out.println("k="+k);
    

2. 输出结果

i==1
i=4
j=1
k=11

3.测试C版

#include <bits/stdc++.h>
#define  inf  0x3f3f3f3f
#define N 100009
#define minn 1e-8   //山枫叶纷飞
using namespace std;
#define ll long long

int main()

    int i=1;
    i=i++;
    cout<<i<<endl;

    int j=i++;
    cout<<"j="<<j<<endl;
    cout<<"i="<<i<<endl;
    return 0;


--输出结果--
1
j=1
i=2

Process returned 0 (0x0)   execution time : 0.185 s
Press any key to continue.

综上所述

  • 无论是C还是Java , i=i++之后的结果都是原值i.
  • 看一章我盗来+灵魂huihua的图:
  • 技术图片

以上是关于关于 " i=i++"是否等价于"i=i+1"的问题探讨 -Java版/C版的主要内容,如果未能解决你的问题,请参考以下文章

如何使“i+=x”作为“i++”工作?

js关于日期比较大小

c语言scanf("%ld",&stu[i].num);

编写一个java程序: 是关于RLE decode 比如说:sdf^5t经过程序后就会成为sdfttttt 符号是" ^ " 谢谢

document.getElementById("pic").src=i+".jpg"; //获得当前图片地址 这是您写的关于图片交替代码中的一

关于java JPanel 里面 add (字符串,组件)