計算機二級C++基礎(chǔ)(C++中<<的優(yōu)先級)

字號:

發(fā)現(xiàn)<<的優(yōu)先級好低呀...還是我太無知了...
    #include
    #define GET_BIT(a, b, c) a << b - c
    int main()
    {
    int a = 1;
    int b = 5;
    int c = 4;
    printf("%d\n", GET_BIT(a, b, c) + 1);
    }
    result: 4
    C的優(yōu)先級口訣
    括號成員第一; //括號運算符[]() 成員運算符. ->
    全體單目第二; //所有的單目運算符比如++、 --、 +(正)、 -(負(fù)) 、指針運算*、&
    乘除余三,加減四; //這個"余"是指取余運算即%
    移位五,關(guān)系六; //移位運算符:<< >> ,關(guān)系:> < >= <= 等
    等于(與)不等排第七; //即== 和!=
    位與異或和位或; //考試.大提示這幾個都是位運算: 位與(&)異或(^)位或(|)
    "三分天下"八九十;
    邏輯或跟與; //邏輯運算符:|| 和 &&
    十二和十一; //注意順序:優(yōu)先級(||) 底于 優(yōu)先級(&&)
    條件高于賦值, //三目運算符優(yōu)先級排到13 位只比賦值運算符和","高
    逗號運算級最低! //逗號運算符優(yōu)先級最低。