zoukankan      html  css  js  c++  java
  • C++ 运算符优先级列表

    PrecedenceOperatorDescriptionExampleAssociativity
    1 ()
    []
    ->
    .
    ::
    ++
    --
    Grouping operator
    Array access
    Member access from a pointer
    Member access from an object
    Scoping operator
    Post-increment
    Post-decrement
    (a + b) / 4;
    array[4] = 2;
    ptr->age = 34;
    obj.age = 34;
    Class::age = 2;
    for( i = 0; i < 10; i++ ) ...
    for( i = 10; i > 0; i-- ) ...
    left to right
    2 !
    ~
    ++
    --
    -
    +
    *
    &
    (type)
    sizeof
    Logical negation
    Bitwise complement
    Pre-increment
    Pre-decrement
    Unary minus
    Unary plus
    Dereference
    Address of
    Cast to a given type
    Return size in bytes
    if( !done ) ...
    flags = ~flags;
    for( i = 0; i < 10; ++i ) ...
    for( i = 10; i > 0; --i ) ...
    int i = -1;
    int i = +1;
    data = *ptr;
    address = &obj;
    int i = (int) floatNum;
    int size = sizeof(floatNum);
    right to left
    3 ->*
    .*
    Member pointer selector
    Member pointer selector
    ptr->*var = 24;
    obj.*var = 24;
    left to right
    4 *
    /
    %
    Multiplication
    Division
    Modulus
    int i = 2 * 4;
    float f = 10 / 3;
    int rem = 4 % 3;
    left to right
    5 +
    -
    Addition
    Subtraction
    int i = 2 + 3;
    int i = 5 - 1;
    left to right
    6 <<
    >>
    Bitwise shift left
    Bitwise shift right
    int flags = 33 << 1;
    int flags = 33 >> 1;
    left to right
    7 <
    <=
    >
    >=
    Comparison less-than
    Comparison less-than-or-equal-to
    Comparison greater-than
    Comparison geater-than-or-equal-to
    if( i < 42 ) ...
    if( i <= 42 ) ...
    if( i > 42 ) ...
    if( i >= 42 ) ...
    left to right
    8 ==
    !=
    Comparison equal-to
    Comparison not-equal-to
    if( i == 42 ) ...
    if( i != 42 ) ...
    left to right
    9 & Bitwise AND flags = flags & 42; left to right
    10 ^ Bitwise exclusive OR flags = flags ^ 42; left to right
    11 | Bitwise inclusive (normal) OR flags = flags | 42; left to right
    12 && Logical AND if( conditionA && conditionB ) ... left to right
    13 || Logical OR if( conditionA || conditionB ) ... left to right
    14 ? : Ternary conditional (if-then-else) int i = (a > b) ? a : b; right to left
    15 =
    +=
    -=
    *=
    /=
    %=
    &=
    ^=
    |=
    <<=
    >>=
    Assignment operator
    Increment and assign
    Decrement and assign
    Multiply and assign
    Divide and assign
    Modulo and assign
    Bitwise AND and assign
    Bitwise exclusive OR and assign
    Bitwise inclusive (normal) OR and assign
    Bitwise shift left and assign
    Bitwise shift right and assign
    int a = b;
    a += 3;
    b -= 4;
    a *= 5;
    a /= 2;
    a %= 3;
    flags &= new_flags;
    flags ^= new_flags;
    flags |= new_flags;
    flags <<= 2;
    flags >>= 2;
    right to left
    16 , Sequential evaluation operator for( i = 0, j = 0; i < 10; i++, j++ ) ... left to right


    作者:凡程子
    出处:http://www.cnblogs.com/fzhe/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    手动启动log4j|nginx实现http https共存
    java.util.zip.ZipException: invalid LOC header (bad signature)
    Bean property 'transactionManagerBeanName' is not writable or has an invalid set
    rabbitmq启动异常table_attributes_mismatch
    nexus私服快速update index方法
    Spring boot ,dubbo整合异常
    如何编写无须人工干预的shell脚本
    Jenkins构建部署jar/war后,服务无法在后台持续运行的解决方案
    移动端CSS通用样式
    Spring bean的几种装配方式
  • 原文地址:https://www.cnblogs.com/fzhe/p/2939887.html
Copyright © 2011-2022 走看看