第1个回答 2019-02-25
这要看你想要变量i的值,还是表达式的值,如果是要变量i的值,那么,如果i=1;
i++和++i都会让变量i自动加1,变成2.
如果你想要表达式的值,那就有所区别了,举个例子:
如果
int
i=1;
那么表达式i++的值是1(先取i原有值作为表达式的值,而后i自动加1)
而表达式++i的值是2(先让变量i自动加1,而后的
i
的值作为整个表达式的值)
第2个回答 2019-09-29
int i = 5;
int k = 5 - i --;
/*
结果得0, i--并不在本行语句执行,只有本行语句执行完后,才真正的执行i-- , 所以本 行语句, i-- 还是5
*/
int i = 5;
int k = 5 - --i;
/*
结果得1,立刻在本行语句执行--i, --i变成4
*/
第3个回答 2019-03-10
执行这两个语句i都变成了i-1。但是i--本身的值依然是i,而--i的值就变成i-1了。
举个例子
int
a,i=5;
a=i--;这时候a=5
i=4
a=--i;这时候a=4
i=4
第4个回答 2019-10-15
二者单独写没有任何区别。
但是如果
i=3;
a=i++;
和
a=++i;
就有区别了,前者a=3
后者
a=4