簡單理解操作符i 和 i的區別

2021-09-25 15:48:18 字數 604 閱讀 3229

++即自增

無論是x++,或者是++x,自增的結果就是x=x+1

--即自減

無論是x--,或者是--x,自減的結果就是x=x-1

而x++和++x的區別就在於過程,我們把(x++)和(++x)看成是過程

看個例項

var i = 1

alert(i++) //1

alert(i) //2 (i=i+1)

var j = 1

alert(++j) //2

alert(j) //2 (j=j+1)

(i++)就是等於原來的值 i

(++j)就是等於原來的值 j+1

自增後的結果都是自身+1

再來個例子

var i = 1;

alert(i++)

alert(++i)

結果:先輸出1,後輸出3

i++輸出,是輸出原來 i 的值,即1

經過i++後,i=i+1=2,即 i 就自增成了2

所以後來++i時,就相當於++2,輸出的值為原來i+1的值,即3

i和i 的區別

大家都應該知道i 和 i的區別,前者是先使用i的值,然後再增加1,而後者是先增加1然後再使用i的值。但是i 和 i那個更好呢?我們實現角度來看 前者是將i值加1後賦給i,然後返回i本身 而後者是先用個臨時變數儲存i值,然後將i值加1賦給i,然後返回臨時變數的值。內建資料型別他們的效率差不多,看他們的...

i 和 i的區別

當年上c 課的時候對於i 和 i的區別就稀里糊塗。後來沒注意也沒出過什麼問題。但是這個問題還是應該搞清楚。假如有乙個vector,值為 1,2,3,4,5,6,7 用以下程式輸出 i 0 while i 7 i 0 while i 7 cout beforei v i endl cout befor...

i 和 i的區別

很多朋友在學習基礎的時候很容易遇到過這個問題,i和i 到底有什麼區別?下面來詳細解釋一下。首先i 和 i單獨為一條語句時沒有任何區別 例如 int i 1 i 單獨為一條語句 system.out.println i i i 2 int i 1 i 單獨為一條語句 system.out.printl...