在眾多編程語(yǔ)言當(dāng)中,C / C ++也是大家所熟知的。C / C ++簡(jiǎn)單的說(shuō)就是一種學(xué)習(xí)軟件,可用于設(shè)計(jì)教學(xué)演示,學(xué)習(xí)和實(shí)驗(yàn)。它是由教學(xué)老師基于C / C ++初學(xué)者和C程序多媒體演示研究與開(kāi)發(fā)設(shè)計(jì)的。今天就給大家介紹的是關(guān)于C / C ++中的增減運(yùn)算符的信息。疑問(wèn)在總結(jié)發(fā)現(xiàn)符號(hào)“ + +和? - - ”在C ++中的許多混亂的初學(xué)者,所以讓我們解釋一下什么實(shí)際他們的意思,我將討論前置和后置增量。
讓我們將x初始化為整數(shù)10。
int x = 10
現(xiàn)在創(chuàng)建另一個(gè)變量y,并在x之前加上++:
預(yù)增:
int y = ++x
眾所周知,pre表示之前,++站在整數(shù)10之前。這稱為預(yù)增量,我們將y的值預(yù)增量。所以我的意思是10加1,那就是11。因此,如果我們打印y,我們將得到11,(10 + 1)。
11
現(xiàn)在?保持的11。
現(xiàn)在,如果我們僅將預(yù)增量運(yùn)算符更改為-,則:
int y = --x // 10 - 1 --> 9
然后將發(fā)生相同的過(guò)程,我將留給您。試試看!
后增量:
讓我們將x初始化為整數(shù)10。我將做同樣的步驟,只是將++放在10之后。
int x = 10
int y = x++
您可能會(huì)驚訝地看到y(tǒng)的結(jié)果未更改…現(xiàn)在,打印y :
/* result of y */10 //no worrry! see below
為什么會(huì)這樣呢?好吧,這是后遞增規(guī)則。Post的意思是之后,所以x ++現(xiàn)在并沒(méi)有加1到10?,F(xiàn)在打印x的值。
11 // wow, x is now 11
如您所見(jiàn),我們對(duì)x (y = x ++)進(jìn)行了后遞增,這意味著您既不想直接向x加1,也不想讓y保持x值的增量。相反,我們要在此表達(dá)式int y = x ++計(jì)算后加1,這稱為后增量。我們不想將x的遞增值存儲(chǔ)到y(tǒng)中,我們只是想像這樣保留該表達(dá)式,
int y = x ++-> int y = x + 0,所以y = x然后x = x + 1。
因此,這里的增量是在表達(dá)式(int y = x ++)求值之后完成的。我們將其稱為后增量。這樣運(yùn)作
請(qǐng)注意,要點(diǎn)是++ x會(huì)增加該值并立即返回它。但是,x ++做相反的事情,因?yàn)樗粫?huì)立即返回增加的值。
現(xiàn)在,讓我們混合使用這兩者,看看發(fā)生了什么。
++和— —混合,
讓我們?cè)谙旅鎳L試以下代碼:
int x = 10
int y = 20
int z = ++x + y++
現(xiàn)在,只要我們打印z,我們將得到:
31
首先讓我告訴你,Pre Increment總是首先執(zhí)行,因此++ x表示(10 + 1→11)和y ++(如 20 + 0→20),結(jié)果是(11 + 20→31)。涼...
現(xiàn)在,嘗試以下操作:
int x = 10
int z = ++x + x++
小心,這里預(yù)遞增首先執(zhí)行它的工作,因此++ x首先被預(yù)遞增!,所以x現(xiàn)在是(10 + 1→11)對(duì)嗎?現(xiàn)在在預(yù)增量之后,后增量開(kāi)始,它的工作現(xiàn)在很容易,那就是:
x ++→11+ 0 = 11
所以現(xiàn)在++ x和x ++加在一起,我們得到了結(jié)果:
22 // Cool! (11+11)
以上就是關(guān)于C / C ++中的增減運(yùn)算符的全部?jī)?nèi)容。這些步驟非常簡(jiǎn)單,認(rèn)真學(xué)過(guò)都輕松完成,希望我能為您提供幫助。想了解更多關(guān)于C / C ++的信息,請(qǐng)繼續(xù)關(guān)注中培偉業(yè)。