C語言 優(yōu)先級(jí)
在一個(gè)數(shù)學(xué)式子里,例如: 3+4 x 7-2,運(yùn)算規(guī)則是先乘除后加減,即“乘除”的優(yōu)先級(jí)要比“加減”高。同樣,在C語言中每個(gè)運(yùn)算符都有自己的優(yōu)先級(jí)。
(1)運(yùn)算符的優(yōu)先級(jí)
優(yōu)先級(jí)決定了運(yùn)算符的運(yùn)算順序,如數(shù)學(xué)中的四則運(yùn)算的運(yùn)算規(guī)則是“先乘除后加減”。在C語言的表達(dá)式中如果出現(xiàn)了多個(gè)運(yùn)算符,則優(yōu)先級(jí)高的運(yùn)算符先運(yùn)算,優(yōu)先級(jí)低的運(yùn)算符后運(yùn)算。
(2)結(jié)合性
當(dāng)一個(gè)操作數(shù)兩側(cè)的運(yùn)算符優(yōu)先級(jí)相同時(shí),按運(yùn)算符的結(jié)合性規(guī)定操作數(shù)先進(jìn)行哪個(gè)運(yùn)算符的操作。即操作數(shù)兩邊的運(yùn)算符優(yōu)先級(jí)相同的由結(jié)合規(guī)則決定運(yùn)算順序。自左向右的結(jié)合方向稱為左結(jié)合,自右向左的結(jié)合方向稱為右結(jié)合,例如算術(shù)運(yùn)算符的結(jié)合性是左結(jié)合(自左向右)。
結(jié)合性是C語言特有的概念,除了單目運(yùn)算(僅對(duì)一個(gè)操作數(shù)進(jìn)行運(yùn)算)、賦值運(yùn)算和條件運(yùn)算符是右結(jié)合外,其他運(yùn)算符都是左結(jié)合。
點(diǎn)擊加載更多評(píng)論>>