七 運算子優先順序

2021-09-26 16:36:33 字數 897 閱讀 8719

1. !> 算術運算子(*/%+-)  > 關係運算子(>>=<<===!=)  > 邏輯運算子(&&||) >  賦值

2. 位運算子(~<< >> & ^ |)

3. .、、函式 高於 *

*p.name 相當於 *(p.name)

int *a 相當於 int *(a)

int *fun() 相當於 int *(fun())

1. &&運算子

只有在 && 左邊的命令返回真,&& 右邊的命令才會被執行。否則不會判斷右邊的命令

2. ||運算子

只有在 || 左邊的命令返回假,|| 右邊的命令才會被執行。否則不會判斷右邊的命令。

1. i++ :先獲取i值,再自增i

2. ++i :i值先自增,再獲取自增後的值

1. 左移

a << n; 相當於 a = a * 2^n

高位丟棄,低位補0

2. 右移

a >> n; 相當於 a = a / 2^n

有符號位不變(即最高位為不變),空缺出來的補0

3. 與

a &=~(1<<3); 第3位置為0

4. 或

a |=1<< 3; 第3位置為1

int a = 2;

a = a << 1;

printf("%d\n", a);

a = a >> 1;

printf("%d\n", a);

a = -2;

a = a << 1;

printf("%d\n", a);

a = a >> 1;

printf("%d\n", a);

運算子優先順序 C 運算子優先順序

c 運算子優先順序 優先順序運算子 描述方向1 scope resolution 範圍解析 left to right 2 suffix postfix increment and decrement 字首 字尾遞增和遞減 function call 函式呼叫 array subscripting ...

運算子優先順序 Python 運算子優先順序

python 運算子優先順序 運算子描述 lambda lambda表示式 or布林 或 and布林 與 not x 布林 非 in,not in 成員測試 is,is not 同一性測試 比較 按位或 按位異或 按位與 移位 加法與減法 乘法 除法與取餘 x,x 正負號 x 按位翻轉 指數 x.a...

運算子優先順序 PHP運算子優先順序

php運算子優先順序 結合方向 運算子附加資訊 非結合clone new clone 和 new左 array 非結合 遞增 遞減運算子 非結合 int float string array object bool 型別非結合 instanceof 型別右結合 邏輯操作符 左 算術運算子 左 算術運...