關閉→
當前位置:尚之範>生活>心理>c語言中y++是啥

c語言中y++是啥

尚之範 人氣:3.19W
c語言中y++是啥

++y是先將y的值加1,表達式的值爲加1後的y的值

y++是表達式的值爲原來的y值,然後再將y的值加1

兩個都能將y的值加1,主要區別在於表達式的值不同

例如,y=1

(1)x=++y,則y=2,x=2

(2)x=y++,則y=2,x=1

y++是先加1再賦值 就是說這條語句執行完後y=y+1

y++ 是先賦值再加1

一、運算過程不同

1、++y:運算過程爲y首先進行自加運算,之後再執行y表達式。

2、y++:運算過程爲先執行y表達式,之後進行自加運算。

二、內存過程不同

1、++y:內存中寄存器先自增1,之後執行y。

2、y++:內存中先執行y,之後寄存器增加1。

擴展資料

自增自減運算符存在於C/C++/C#/Java等進階語言中,它的作用是在運算結束前(前置自增自減運算符)或後(後置自增自減運算符)將變量的值加(或減)一。

相較於這些語言中的+=和-=運算符,自增運算符更加簡潔,且可以控制效果作用於運算之前還是之後,具有很大的便利性。

自增運算符 ++ 使操作數的值加1,其操作數必須爲可變左值(可簡單地理解爲變量)。

自減運算符--與之類似,只不過是變加爲減而已。

在同一條語句中,被操作的數出現多次是可以透過編譯的,但是其在C++ Standard等語言標準中被定義爲"Undefined behavior"(不確定的行爲),即不同的編譯器或編譯器版本所編譯得到的機器碼可能不盡相同。

不推薦在同一條語句中使被操作的數出現多次,這不僅僅將導致程序的含義難以理解,可讀性大幅降低,同時可能導致不同的編譯器或編譯器版本得到不同的結果。

TAG標籤:#語言 #