• MATLAB运算符优先级一览表

    MATLAB 在执行含有关系运算和逻辑运算的数学运算时,同样遵循一套优先级原则。原则规定:MATLAB 首先执行具有较高优先级的运算,其次执行具有较低优先级的运算;如果两个运算的优先级相同,则按从左到右的顺序执行。

    一般情况下,在一个表达式中,算术运算符优先级最高,其次是关系运算符,最后是逻辑运算符。如果需要,可以通过括号来改变运算顺序。

    MATLAB 中具体的运算符优先级排列如下表所示。

    MATLAB 运算符优先级一览表
    优先级 运算符 优先级高低
    1 圆括号 ( )
    2 矩阵转置和乘方:转置(.')、共轭转置(')、乘方(.^)、矩阵乘方(^)
    3 一元加法(+)、—元减法(-)、取反(~)
    4 乘法(.*)、矩阵乘法(*)、右除(./)、左除(.\)、矩阵右除(/)、矩阵左除(\)
    5 加法(+)、减法(-)、逻辑非(~)
    6 冒号运算符(:)
    7 小于(<)、小于等于(<=)、大于(>)、大于等于(>=)、等于(==)、不等于(~=)
    8 逐元素逻辑与(&)
    9 逐元素逻辑或(|)
    10 避绕式逻辑与,或者捷径逻辑与(&&)
    11 避绕式逻辑或,或者捷径逻辑或(||)

    用过其他编程语言的用户可以知道,上表中的优先级顺序与大多数计算机编程语言基本相似。用户可以使用括号任意改变上表的运算优先级顺序,但同一级括号内部仍遵循上表中的优先级顺序。

    可以利用下面的代码验证逻辑与&和逻辑或|的优先级:

    >> 4|2&1
    ans =
        1
    
    >> 5|(3&2)
    ans =
        1

更多...

加载中...