C++运算符的优先级

    技术2022-05-11  62

    运算符的优先级

           C++/C语言的运算符有数十个,运算符的优先级与结合律如表4-1所示。注意一元运算符 +  -  * 的优先级高于对应的二元运算符。

     

    优先级

    运算符

    结合律

     

     

     

     

     

     

     

    ( )  [ ]  ->  .

    从左至右

    !  ~  ++  --  (类型) sizeof

    +  -  *  &

    从右至左

     

    *  /  %

    从左至右

    +  -

    从左至右

    <<  >>

    从左至右

    <   <=   >  >=

    从左至右

    ==  !=

    从左至右

    &

    从左至右

    ^

    从左至右

    |

    从左至右

    &&

    从左至右

    ||

    从右至左

    ?:

    从右至左

    =  +=  -=  *=  /=  %=  &=  ^=

    |=  <<=  >>=

    从左至右

    4-1 运算符的优先级与结合律

     

    l         【规则 4-1-1 】如果代码行中的运算符比较多,用括号确定表达式的操作顺序,避免使用默认的优先级。

    由于将表4-1熟记是比较困难的,为了防止产生歧义并提高可读性,应当用括号确定表达式的操作顺序。例如:

    word = (high << 8) | low

    if ((a | b) && (a & c))  


    最新回复(0)