运算符优先级(c++)(1~8级)

接上篇:逻辑或、与、非、或非、与非、异或、同或运算

在c++中,运算符有一定的优先级。就像数学中的()、+、-、*、/ 等符号。我们知道,数学中的括号为第一优先级,其次是*、/,然后是+、-。那么:

How about c++?(部分运算符)

第一级别:作用域解析符:“::”。举例:

Class::age = 2;

第二级别:

        1.函数调用符: () 。举例:

int b=-3;
abs(b);

        2.后自增运算符/后自减运算符: ++ /--  :最明显的就是在for循环中:

//后自增运算符:
for(int i=1;i<=100;i++){
    cout<<"QAQ"<<endl;
}
//后自减运算符:
for(int i=100;i>=1;i--){
    cout<<"QAQ"<<endl;
}

第三级别:

        1.逻辑取反:‘  ! ’。举例:

int n,k;
if(k==n){
    cout<<QAQ"<<endl;
}

        2.按位取反:' ~ '。见上篇。

        3.正负号:  +  -  。不多赘述。

第四级别:类指针成员引用/类对象成员引用: “ ->* ” / “ .* ”。

第五级别:即乘、除法及取模运算。

第六级别:加减法运算。

第七级别:位左移、右移:'<< '  、' >> '。

//位左移:
int flag=10086<<2;

//位右移:
int flag=10086>>2;

第八级别:小于、小于等于;大于、大于等于。

接下篇:运算符优先级(c++)(9~16级)

参考文章:运算符优先级 百度百科https://baike.baidu.com/item/%E8%BF%90%E7%AE%97%E7%AC%A6%E4%BC%98%E5%85%88%E7%BA%A7/4752611?fr=aladdin#4https://baike.baidu.com/item/%E8%BF%90%E7%AE%97%E7%AC%A6%E4%BC%98%E5%85%88%E7%BA%A7/4752611?fr=aladdin#4