C语言中结合性自右向左怎么理解

如题所述

1、简单说就是,从表达式右边开始执行;
只有同优先级的运算符才具有结合性“自左至右”或者“自右自左”一说。

2、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)
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-11-29
简单说就是,从表达式右边开始执行;

只有同优先级的运算符才具有结合性“自左至右”或者“自右自左”一说。

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)本回答被网友采纳

C语言中结合性自右向左怎么理解?
C语言中结合性自右向左,简单说就是,从表达式右边开始执行;1、只有同优先级的运算符才具有结合性“自左至右”或者“自右自左”一说。2、exp(不同优先级运算符,依据优先级高低进行运算):int a = 1, b =10, c = 30;int a = a * b + c;因为 * 比 + 的运算符优先级高,所以先计...

c语言?:自右向左怎么理解
1、简单说就是,从表达式右边开始执行;只有同优先级的运算符才具有结合性“自左至右”或者“自右自左”一说。2、exp(不同优先级运算符,依据优先级高低进行运算):int a = 1,b =10,c = 30;int a = a b + c;因为 比 + 的运算符优先级高,所以 先计算a b (先计算左边,未考虑结合...

C语言中单目运算符,结合性从左到右,分别是什么意思??
结合性从左到右,就是运算的顺序是从左到右执行的,先运算左边的再运算右边的,如果结合性从右到左的话,就是运算顺序从右边到左边了

运算符的什么叫做左结合性和右结合性
左结合性:自左至右。右结合性:自右至左。一个运算量两侧的运算符优先级相同时,按运算符的结合性所规定的结合方向处理。C语言中各运算符的结合性分为两种,即左结合性和右结合性。如,算术运算符的结合性是自左至右,即先左后右。如有表达式x-y+z则y应先与“-”号结合,执行x-y运算,然后...

c语言中条件运算 结合方向 从右到左 什么意思
运算符的结合方向(顺序)决定了计算的顺序。条件运算符(? :)的结合方向是从右到左,也即运算符的匹配顺序是从右往左的。下面举例说明结合顺序从右到左的含义:int a=1, b=3, c=2, d;d = a>b ? a : c>b ? c : b; \/\/ 根据从右到左的结合顺序,则该表达式等价于d = (a>b ?

C语言。逻辑运算符!是___结合性。
在 C 语言中,逻辑运算符 ! 是一元运算符,它的结合性是从右往左的。也就是说,在表达式中存在多个 ! 运算符时,C 语言将首先计算最右边的 ! 运算,然后再计算左边的 ! 运算。例如:Copy code int a = 1, b = 0;!a && !b \/\/ 结果为 0 在这个例子中,!a 的结果为 0(...

c语言中==的结合性是从右到左的,指的是什么意思?是从右边的==开始算还 ...
结合性 指同一优先级的运算符 出现在同一表达式里 应当 按 从左到右的次序 还是 从右到左 的 次序 运行。== 和 != 在同一优先级,双目运算,从左往右 结合:t = (a==b!=c) ;先算 a==b, 再把它的结果 同 c 比。赋值运算符 =+=-=*= 从右到左结合。最好规规矩矩,多加...

...优先级是相同的,结合性是自右向左。怎么理解它的自右向
比如(!x || y--),在!和--优先级别一样的时候,是先算y--而后再算!x 再而后再算|| ;这就是自右向左,做多点题目,多理解一点就好

如何理解C语言的左结合 和右结合性
指的是程序在计算时的计算顺序,比如算 1+2+3+4 左结合性:1+2+3+4 = 3+3+4 6+4 10 而右结合性是相反的。当然计算的顺序跟运算符号的优先级有关,先优先级再考虑结合性。

条件运算符的结合方向是“自左向右”对么?
C语言中各运算符的结合性分为两种,即左结合性(自左至右)和右结合性(自右至左)。例如算术运算符的结合性是自左至右,即先左后右。如有表达式 x-y+z则 y 应先与“-”号结合,执行 x-y 运算,然后再执行+z 的运算。这种自左至右的结合方向就称为“左结合性”。而自右至左的结合方向称...

相似回答