細說自增與自減操作符

2022-01-31 08:10:02 字數 906 閱讀 1574

通常我們用倆個加號表示自增操作符++,兩個減號表示自減操作符--。

myvar=myvar+1;

myvar=myvar-1;

可以用

myvar++;

myvar--;

來替換。

我們可以把++和--放在變數之後,也可以放在變數之前。例如:

++myvar;

--myvar;

通常情況下,當++和--作用於某個變數自身時,把它們放在變數之前,還是之後,是相同的。但是,如果我們在表示式中與其他操作符一起使用++或--,例如:

myvar=mynumber++ -20;

上面的**,先從變數中減去20,然後把mynumber加1,最後把加1之前的結果傳給變數myvar。如果把++放在前面就不一樣了,例如:

myvar=++mynumber -20;

上面的**,先將變數mynumber+1,然後減去20,最後把結果傳給變數myvar,這兩行**的結果只相差1。但在某些情況下,結果可能有天壤之別。例如:

mynumber =1;

myvar =(mynumber++ *10 +1);

變數myvar的結果是多少呢?這裡++作為字尾,後執行,所以先用1*10得到10,然後加上後面的1得到11,將11傳給變數myvar,然後mynumber自增1,得到12。

我們再來看看下面的**:

mynumber=1;

myvar=(++mynumber *10 +1);

這裡的++被放在前面,先執行,也就是先自增1得到2,然後2*10得到20然後加1得到21,最後將21傳給myvar。

這就是細微的差距。要注意。一前一後,就是11與21的不同結果。

自增 和自減 操作符

自增操作符和自減操作符經常要在我們自定義的類型別中使用到,而使用時經常會出現問題。現把自己在學習的過程中的 拿出來看一下,也是c primer中的例子如下 ifndef check ptr define check ptr include using namespace std class chec...

關於自增自減操作符

c c 中自增自減運算子相信是不少人的乙個困擾,這個問題也一直困擾著我,今天再次翻開書本來看了看,有了些新的體會,所以在這裡記錄下來,同時也與那些像我一樣被困擾的人分享,程式設計大牛可以繞道了,或者有什麼不對的地方請大牛們指正。以 為例,如下程式輸出結果是什麼 int a 0,j 1 a j cou...

自增和自減操作符

毫無疑問,自增 和自減 操作符為物件加1或減1操作提供了方便簡短的實現方式。程式設計中的宗旨 簡潔即美 它們有前置和後置兩種使用形式 int i 0,j j i j 1,i 1 prefix yields incremented value j i j 1,i 2 postfix yields un...