A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


后自增情况:
int a =1 ;
int b = a++;
这里相当于介入了一个临时变量temp
int temp = a ;//temp = 1
a = a+1;//a=2
后自增此处 是把temp的值进行操作
————————————————
前自增情况:

int c = ++a;
int temp = a ;//temp = 1
a = a+1;// a = 2
前自增   是把a 自增后的值进行操作

示例:
int i = 1;
i = i++;
syso( i ); 请问输出的i值是多少?为什么?

其实此处输出的i值为1 正如上述讨论结果,相当于一个temp的值直接赋值给了i,然后直接输出。
但是如果这个地方换成 int i  = a++;
syso( i );syso( a );
此时输出的值为 i = 1 ;  a = 2; 因为只是i=i++ 的话,自增的i的值不能被带到下面去
但是换成了a 的话,就不会因为赋值所阻碍。会直接被输出语句输出值

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马