右結合性是什麼意思,C語言中右結合性和右結合性是什麼意思

2021-03-03 23:40:02 字數 2505 閱讀 3964

1樓:流火之雲

」右結合性「,就是在c語言中表示式中最右邊的操作最先執行,然後從右到左依次執行。

右結合性:

讀音:yòu jié hé xìng,

左結合性:

釋義:操作符(如位操作符「&」和「|」)則是從左至右依次執行範圍:c語言中具有右結合性的運算子包括所有單目運算子以及賦值運算子(=)和條件運算子。其它都是左結合性。

舉例:a=b+c+d

=是右結合的,所以先計算(b+c+d),然後再賦值給a+是左結合的,所以先計算(b+c),然後再計算(b+c)+d參考資料

右結合性是什麼意思?

2樓:大加索爾

右結合性:意思是從右向左執行運算;例如

a=b=c,按a=(b=c)運算,

左結合性:意思是從左向右執行運算;例如

a+b+c,按(a+b)+c運算

,除了賦值運算子外,所有二元運算子都是左結合的

c語言中右結合性和右結合性是什麼意思

3樓:匿名使用者

舉個例子

a=b+c+d

=是右結合的,所以先計算

(b+c+d),然後再賦值給a

+是左結合的,所以先計算(b+c),然後再計算(b+c)+dc語言中具有右結合性的運算子包括所在單目運算子以及賦值運算子(=)和條件運算子。其它都是左結合性.

c語言中左右結合性什麼意思?

4樓:

其實很簡單,它就是同優先順序操作符在語句中的「運算優先順序(或叫順序)」。比如12/3*4,/和*是同優先順序操作符,先算12/3呢還是先算3*4呢?由於/和*都是左→右結合的,所以12/3*4就被解釋為(12/3)*4,而不會被解釋為12/(3*4)。

再比如當p是指標時的*p++,由於*和++同級別,它們又是右→左結合的,所以被解釋為*(p++)而不會被解釋為(*p)++。從以上可知,對於不同優先順序的操作符,結合性就起不到什麼作用了。個人理解,僅供參考。

5樓:匿名使用者

對左邊還是右邊的操作物件產生影響。

c語言中左右結合性,怎麼理解?

6樓:志當存高遠

簡單說就是,從表示式右邊開始執行;

只有同優先順序的運算子才具有結合性「自左至右」或者「自右自左」一說。

exp(不同優先順序運算子,依據優先順序高低進行運算):

int a = 1, b =10, c = 30;

int a = a * b + c;

因為 * 比 + 的運算子優先順序高,所以

先計算a * b (先計算左邊,未考慮結合性),在計算 10 + c結果是 a = 300

exp(同優先順序運算子依據結合性進行運算):

int a, b = 1, c = 8;

a = b = c;

賦值運算子其結合性即為自右向左,即 a = ( b = c), 其結果是 b = 8, a = 8;

(錯誤答案:自左向右進行結合的話a = 1)

java中的運算子的左右結合性是什麼意思

7樓:匿名使用者

結合性是bai這樣的

當有多中運算子參與du運算的時候,先zhi要考慮優先dao級,有相同優先順序

8樓:笨瓜

? :屬於三元復運算

符expression1 ? expression2 : expression3

是一種特殊運制算..

判斷?前的算式(expression1)是否為true,如果為true,返回:前面的式子(expression2)的結果.

如果為false,返回:後面的式子(expression3)的結果.

c裡面,這個是為什麼是右結合性啊?

9樓:匿名使用者

這裡按右結合是很自然的,如果按左結合,就變成了(x=y)=z,而(x=y)是表示式,不能作 = 操作的左值。

關於c++中的運算順序--什麼叫「右結合性」

10樓:匿名使用者

可以理解為左抄值與右值,lhs,rhs,比如lhs = rhs,結合性是bairhs賦給dulhs,返回的zhi是lhs,所以是從右向左的,++lhs,lhs++就不

dao一樣了,返回的值在左側或右側決定結合性

注 : 本人只是將你所說的結合性用返回左值和右值的不同加以解釋,準確定義請檢視參考資料

11樓:匿名使用者

例如,i=2

-i++的計算中,負號和自加運算屬於同一運算級的,按照自右向左結合的方法,得出的結果就是-2,然後i自增為3。也就等同於 --(i++)

12樓:微電子

先計算右值(等號右邊的值),再賦值給等號左邊

C語言中的左結合性是什麼,C語言中左右結合性什麼意思?

同乙個算式 a b c 左結合性 a b c 右結合性 a b c 意思是 從表示式右邊開始執行 只有同優先順序的運算子才具有結合性 自左至右 或者 自右自左 一說。有些運算子的優先順序是錯誤的。當按照常規方式使用時,可能引起誤會的任何運算子 就是存在錯誤優先順序的運算子。的優先順序高於 操作符用於...

在C語言中,下列運算子中結合性屬於自右向左的是A

b負號運算子的結合方向自右至左,其他的都自左至右。原因嘛,沒什麼原因,就是這樣用的,書上也是這麼寫的,算是規定吧!一般c語言的書最後附錄裡都有介紹,你去看看 是與運算方向是從左到右 左移符號,就是把相關值的二進位制位向左移動,結尾補0,比如5 2就是把5的二進位制00000101向左移動2位,結果為...

c語言中運算子中結合性屬於自右向左的是什麼

b負號運算子的結合方向自右至左,其他的都自左至右。原因嘛,沒什麼原因,就是這樣用的,書上也是這麼寫的,算是規定吧!一般c語言的書最後附錄裡都有介紹,你去看看 左向右 同一級別先左後右 c語言中,哪些運算子具有左結合性?哪些具有右結合性?1級 左結合 圓括號 下標運算 符 指向結構體成員運算子 結構體...