8.8运算符优先权

运算符优先级确定在一个表达式中出现不同运算符时,运算符的分组方式。例如*的优先级高于+’. 因此,表达式a + b * c乘法的意思bc,然后添加a对于产品(即。,a + (b * c)).

您可以使用括号否决运算符的优先级。如果你自己不写括号,你可以把优先规则想象成假设括号在这里的。事实上,当你有一个不寻常的运算符组合时,使用括号是明智的,因为其他阅读程序的人可能不记得在这种情况下的优先级是多少。你也可能忘记,然后你也可能犯错误。显式括号将有助于防止任何此类错误。

当优先级相等的运算符一起使用时,最左边的运算符首先分组,但按相反顺序分组的赋值运算符除外。因此,表达式a - b + c分组为(a - b) + c,但是表达式a = b = c分组为a = (b = c).

当一个运算符跟在操作数后面时,前缀一元运算符的优先级很重要。例如-x^2方法-(x^2)因为-的优先级低于^’.

这是一个Octave运算符表,按优先级递减的顺序排列。除非另有说明,否则所有运算符都从左到右分组。

function call and array indexing, cell array indexing, and structure element indexing

()’ ‘{}’ ‘.

广告
postfix increment, and postfix decrement

++’ ‘--

这些操作符从右向左分组。

广告
transpose and exponentiation

’ ‘.'’ ‘^’ ‘.^

广告
unary plus, unary minus, prefix increment, prefix decrement, and logical "not"

+’ ‘-’ ‘++’ ‘--’ ‘~’ ‘!

广告
multiply and divide

*’ ‘/’ ‘\’ ‘.\’ ‘.*’ ‘./

广告
add, subtract

+’ ‘-

广告
colon

:

广告
relational

<’ ‘<=’ ‘==’ ‘>=’ ‘>’ ‘!=’ ‘~=

广告
element-wise "and"

&

广告
element-wise "or"

|

广告
logical "and"

&&

广告
logical "or"

||

广告
assignment

=’ ‘+=’ ‘-=’ ‘*=’ ‘/=’ ‘\=’‘^=’ ‘.*=’ ‘./=’ ‘.\=’ ‘.^=’ ‘|=’‘&=

这些操作符从右向左分组。

广告

版权所有 © 2024-2025 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号-2