int i = 0
i = i ++ ;
j= i ++ ;
问在java底下, c底下, i是几,j是几
关键在i = i++ 算完了之后, java是0, c是1
c就不说了,反正平常我也不用
java的话
i++的时候,原来的这个i不动,另外分配一个内存i1,i1的作用是用来保存原来的这个数值,i1和i都是0,然后把i加1,这个时候i是1,i1是0,然后把i1的值赋给i,这个时候i1是0,i也是0,然后i1销毁
如果是j等于i++的情况,类似, 一开始,i1和i都是0,然后i自己加1,这个时候i1是0,i是1,然后把i1的值赋给j,这个时候,j是0,i是1,i1是0,然后i1销毁,这个时候j是0,i是1,i1不存在
纯粹为了考试。。。。。
分享到:
相关推荐
为了避免无限循环的发生,正确的做法是直接使用`i++`或者`i += 1`来更新循环变量: ```java public class Test { public static void main(String[] args) { for (int i = 0; i <= 10; i++) { System.out.print...
如何理解i=i++和i=++i.docx
### 对于含有n个内节点的二元树,证明E=I+2n。其中E、I分别为外部和外部路径长度。 #### 背景知识 在计算机科学中,二叉树是一种重要的数据结构,它由节点组成,每个节点最多有两个子节点。二叉树在算法设计和分析...
### 关于“++i, i++, --i, i--”的理解与应用 #### 一、基本概念 在C/C++编程语言中,“++i, i++, --i, i--”是一组非常重要的自增自减运算符。这些运算符主要用于在程序中修改变量的值。了解这些运算符的工作原理...
i = i++; 结果还是0 为什么? 程序的执行顺序是这样的:因为++在后面,所以先使用i,“使用”的含义是i++这个表达式的值是0,但是并没有做赋值操作,它在整个语句的后才做赋值,也是说在做了++操作后再...
2. 后减操作符(i--):这个操作符先返回`i`当前的值,然后将`i`的值减少1。 3. 表达式求值顺序:在Java中,没有明确的顺序来规定带有多个操作符的表达式应该从左到右还是从右到左执行。但根据Java的运算符优先级,...
因此,如果我们将i++放入表达式中,例如`int c = i++;`,那么变量c将会获得i的原始值,而i在赋值后才会增加。而++i是前缀自增运算符,它先将变量i的值加1,然后返回自增后的值。如果我们使用++i,如`int c = ++i;`,...
一个小程序kb=200;... if i+4==6||i+4==7||i+4==10||i+4==11 a(i+4,i)=-kd; else a(i+4,i)=-kb; end end for i=1:12 if i==6||i==7||i==10||i==11 a(i,i+4)=-kd; else a(i,i+4)=-kb; end end
C++ 中的左值和右值、i++ 与 ++i 的区别 在 C++ 编程语言中,左值(Lvalue)和右值(Rvalue)是两个重要的概念,它们在变量和表达式中的角色不同,理解这两个概念对于编写正确和高效的代码非常重要。 左值(Lvalue...
在Python编程语言中,`i += x` 和 `i = i + x` 两种表达式在大部分情况下是等价的,但在处理可变对象(如列表)时,它们的行为有所不同。这个问题的关键在于理解Python中的可变对象和不可变对象的概念,以及它们如何...
i+=a;`涉及到了几个核心的编程概念。首先,`i=3;`是一个基本的变量赋值操作,其中变量`i`被初始化为整数值3。在Java语言中,变量的声明和初始化是程序运行的基础,它们为程序提供运行所需的存储空间和初始状态。 ...
i += 0.2) { t = i / Math.PI; x = 16 * Math.pow(Math.sin(t), 3); y = 13 * Math.cos(t) - 5 * Math.cos(2 * t) - 2 * Math.cos(3 * t) - Math.cos(4 * t); points.push(new Point(x, y)); } this.points =...
i++) for (j=0;j; j++) A[i][j]=0; 8. 分析下面算法(程序段),给出最大语句频度 ,该算法的时间复杂度是__ __。 for (i=0;i;i++) for (j=0; j<i; j++) A[i][j]=0; 9. 分析下面算法(程序段),给出最大语句频度...
i++ :先在i所在的表达式中使用i的当前值,后让i加1 ++i :让i先加1,然后在i所在的表达式中使用i的新值 看一些视频教程里面写for循环的时候都是写 ++i 而不是 i++,上网搜索了一下,原来有效率问题 ++i相当于下列...
在C语言中,`++i` 和 `i++` 是两种常见的自增操作符,它们在编程中的作用是增加变量的值。虽然它们看似相似,但在某些特定情况下,两者的行为是有区别的,这也是C语言初学者经常感到困惑的地方。本文将深入探讨这两...
i++){ LED_PORT0=0xf0;time(300); LED_PORT0=0xff;time(300); } EA=1; } void exint1()interrupt 2{ uchar i; EA=0; for(i=0;i;i++){ LED_PORT2=0xf0;time(300); LED_PORT2=0xff;time(300); } ...
在JavaScript编程语言中,一元运算符`i++`和`++i`是常见的自增操作,它们在处理变量的值时有不同的行为和顺序。理解这两种运算符的区别对于编写高效和无误的代码至关重要。 首先,`i++`称为后置自增运算符。它的...
- 当使用`i = i++`时,首先计算右侧的`i++`,返回当前值1给`i`,然后`i`自增变为2。 - 对于`int j = i++`,此时`i`的值为2,所以`j`获取到2,然后`i`自增为3。 - 最复杂的部分是`int k = i + ++i * i++`。这里先执行...
- `int k = i + ++i * i++`:`i`现在是3,`++i`使`i`变成4,然后计算`4 * 4++`,`4 * 4`的结果是16,此时`i`自增变为5,所以`k`的最终值是`4 + 16`,即20。 然而,代码中的`k`打印出来是11,这表明在`k`的计算过程...
1. Java高频面试题(一)– Java运算执行流程分析 ... int k=i+++i*i++; System.out.println(i=+i); System.out.println(j=+j); System.out.println(k=+k); } 相应字节码: // access flags 0x9 publi