
文章插圖
i++和++i的區(qū)別:
1、i++ 返回原來的值,++i 返回加1后的值 。
【i++和++i的區(qū)別(i i++和++i的區(qū)別python】2、i++ 不能作為左值,而++i可以 。
3、i++前者是先賦值,然后再自增;++i后者是先自增 , 后賦值 。
如果有表達(dá)式 a = i++ ;它等價(jià)于 a = i;i = i + 1;
如果有表達(dá)式 a = ++i;它等價(jià)于i = i + 1;a = i;
++i和i++都是分兩步完成的 。因?yàn)?+i 是后面一步才賦值的,所以它能夠當(dāng)作一個(gè)變量進(jìn)行級(jí)聯(lián)賦值,++i =;a =b,即++i是一個(gè)左值(可被尋址的值);i++ 的后面一步是自增,不是左值 。
++i和i++的使用 , 一般來說在循環(huán)域里面,這兩者并沒有什么很大的區(qū)別,因?yàn)榫幾g器一般都會(huì)做優(yōu)化 。但是要注意其生存周期,以及很難察覺的,就好像指針delete以后一定要賦予0一樣,要注意i值在程序流中的變化 。
推薦閱讀
- 納米晶和納米材料的區(qū)別是什么
- 5g雙模區(qū)別 一體化雙模5g和雙模5g區(qū)別
- 紅米波輪洗衣機(jī)1a和1s區(qū)別 小米洗衣機(jī)波輪1a和1s有什么區(qū)別
- 螺紋環(huán)規(guī)6e和6g的區(qū)別 螺紋環(huán)規(guī)6e與6g的區(qū)別
- 長(zhǎng)安CS15用的什么發(fā)動(dòng)機(jī) 長(zhǎng)安cs15和cs35發(fā)動(dòng)機(jī)有什么區(qū)別
- lng和cng有什么區(qū)別 lng與cng區(qū)別
- 龍珠改和龍珠有什么區(qū)別
- 秦與秦pro的區(qū)別 新款秦和秦pro區(qū)別
- 10寸戚風(fēng)蛋糕配方做法 10寸戚風(fēng)蛋糕配方和做法
- 連通器原理 連通器原理和大氣壓強(qiáng)有關(guān)嗎
