• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            brent's hut

            C++ 運算符優(yōu)先級列表

            http://www.cppreference.com/operator_precedence.html
            Precedence Operator Description Example Associativity
            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

            posted on 2006-06-08 09:33 brent 閱讀(198878) 評論(18)  編輯 收藏 引用 所屬分類: C++

            評論

            # re: C++ 運算符優(yōu)先級列表 2009-04-17 20:16 創(chuàng)意產(chǎn)品網(wǎng)

            收藏了,需要時可以來查  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2009-10-14 19:50 Xiaodu

            不錯,很有用……  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2009-12-25 10:31 rock

            ::域運算符的優(yōu)先級應該是最高的吧  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2010-01-09 21:20 xgenvn

            @rock
            就是,都在precedence1,一樣的優(yōu)先級  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2010-05-09 11:42 gkhdgfg

            真是不錯,省得翻書了。  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2010-10-28 09:47 zhuang563

            這種情況如何判斷?a是0、1、2時,都要判斷b嗎?還是只有a=1或2時,才判斷b?

            if(a==0 || a==1 && b==0 || a==2 && b==1)  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2010-10-29 11:17 brent

            @zhuang563
            if(a==0 || a==1 && b==0 || a==2 && b==1)
            相當于
            if(a==0 || (a==1 && b==0) || (a==2 && b==1) )
            對于||來說, 只要遇到一個表達式是true, 后面的表達式都不會再判斷, ||范圍的表達式為true。
            而對于&&來說, 只要遇到一個表達式是false, 后面的表達式都不會再判斷, &&范圍的整個表達式為false。
            你可以寫一些代碼自己調(diào)試看看就知道了。  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2011-06-16 19:05 林緣雨夢

            我編了個口訣,幫忙記憶
            闊框點箭域先鋒 ① () [] . -> ::
            塞外干旱煩政府 ②sizeof ! ~ + -
            家家戶戶限制米 ++ -- (type型) &(取址) *
            救災捐米一點米 ③->* .*
            時余曾促物價減 ④% * / ⑤+ -
            左鄰右舍來相告 ⑥<< >>
            老大小凳換大凳 ⑦> < <= >=
            把事說明等不等 ⑧== !=
            久雨適宜事宜否 ⑨&⑩^⑾|
            十二雨下十三過 ⑿&&⒀||
            三夢睡醒燈都滅 ⒁:?(三目運算) ⒂= +=...⒃,(逗號)
              回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2011-09-09 12:31 幻の上帝

            這張表還是有問題的。
            嚴格來說::不算operator。::和析構(gòu)函數(shù)的~是同一個性質(zhì)的東西,是punctuator。
            討論優(yōu)先級的話,::確實在最前。它參與組成了primary-expression。而操作符至少組成postfix-expression。  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2012-03-18 07:45 Carl

            你太有才了,Very Smart  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2012-03-18 08:49 Carl

            請問各位大俠,# 與##是什么運算符,有什么作用?  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2012-04-01 16:02 MassachusettsIT

            很好,很強大!!!  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2012-04-11 16:46 沉默的羔羊

            謝謝分享,收藏了  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2012-04-17 10:41 呵呵

            多謝分享  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2012-05-29 01:24 lalallalaGERUSA

            hi ^^ LALALLAALLALALAL  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2012-06-02 19:31 carinabarra@libero.it

            Ve puzza la chiappa  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2012-08-02 07:53 +++++++++++

            +++++++++++  回復  更多評論   

            # re: C++ 運算符優(yōu)先級列表 2012-11-10 10:36 ererer

            &GetDocument()->m_sampleSet;

            請問上面都語句對GetDocument()是先取地址呢,還是先進行箭頭操作?  回復  更多評論   

            69久久夜色精品国产69| 久久精品国产99国产电影网| 久久97久久97精品免视看秋霞| 久久天天躁狠狠躁夜夜avapp| 精品乱码久久久久久久| 精品久久人人妻人人做精品| 国产成人精品综合久久久| 久久精品aⅴ无码中文字字幕重口| 国产成人久久777777| 久久久精品2019免费观看| 亚洲国产高清精品线久久| 国产精品一久久香蕉产线看| 亚洲精品NV久久久久久久久久| 麻豆AV一区二区三区久久| 精品国产日韩久久亚洲| 国产一区二区精品久久凹凸| 亚洲αv久久久噜噜噜噜噜| 性欧美大战久久久久久久| 久久精品成人免费看| 久久免费的精品国产V∧ | 国产午夜久久影院| 国产aⅴ激情无码久久| 亚洲中文字幕伊人久久无码 | 久久99毛片免费观看不卡| 一本色道久久88精品综合| 亚洲欧美日韩久久精品| 日本精品久久久久影院日本| 国产成人香蕉久久久久| 久久无码av三级| 69国产成人综合久久精品| 久久久久亚洲av无码专区| 日韩精品久久无码人妻中文字幕| 一本久久a久久精品综合香蕉| 久久久久噜噜噜亚洲熟女综合| 国产福利电影一区二区三区久久老子无码午夜伦不 | 国内精品久久久久影院一蜜桃| 久久天天躁狠狠躁夜夜avapp| 久久精品国产亚洲av麻豆小说| 国产午夜精品久久久久免费视| www.久久热.com| 精品久久久久久无码免费|