C語言運算子優先順序詳細列表與說明

2022-08-12 19:45:06 字數 678 閱讀 3655

說明:所有的優先順序中,只有三個優先順序是從右至左結合的,它們是單目運算子、條件運算子、賦值運算子。其它的都是從左至右結合。

具有最高優先順序的其實並不算是真正的運算子,它們算是一類特殊的操作。()是與函式相關,與陣列相關,而->及.是取結構成員。

其次是單目運算子,所有的單目運算子具有相同的優先順序,因此在我認為的真正的運算子中它們具有最高的優先順序,又由於它們都是從右至左結合的,因此*p++與*(p++)等效是毫無疑問的。

接下來是算術運算子,*、/、%的優先順序當然比+、-高了。

移位運算子緊隨其後。

其次的關係運算子中,<<=>>=要比==!=高乙個級別,不大好理解。

所有的邏輯操作符都具有不同的優先順序(單目運算子出外,!和~)

邏輯位操作符的"與"比"或"高,而"異或"則在它們之間。

跟在其後的&&比||高。

接下來的是條件運算子,賦值運算子及逗號運算子。

在c語言中,只有4個運算子規定了運算方向,它們是&&、||、條件運算子及賦值運算子。

&&、||都是先計算左邊表示式的值,當左邊表示式的值能確定整個表示式的值時,就不再計算右邊表示式的值。如a=0&&b;&&運算子的左邊位0,則右邊表示式b就不再判斷。

在條件運算子中。如a?b:c;先判斷a的值,再根據a的值對b或c之中的乙個進行求值。賦值表示式則規定先對右邊的表示式求值,因此使a=b=c=6;成為可能。

C語言基礎知識運算子

三 運算子 賦值運算子 作用是把某個常量或變數或表示式的值賦值給另乙個變數。符號為 賦值語句左邊的變數在程式的其他地方必須要宣告。已賦值的變數稱為左值,因為它們出現在賦值語句的左邊 產生值的表示式我們稱為右值,因為它們出現在賦值語句的右邊。常數只能作右值。如 count 5 total1 total...

c語言邏輯運算子詳解

邏輯運算子 包括 1。邏輯與 2。邏輯或 3。邏輯非 邏輯運算子用於對包含關係運算子的表示式進行合併或取非 對於使用邏輯運算子的表示式,返回0表示 假 返回1表示 真 關於邏輯運算子的解釋 請注意 任何使用兩個字元做符號的運算子,兩字元之間不應有空格,即將 寫成 是錯誤的。假設乙個程式在同時滿足條件...

c語言操作符的優先順序排列及其說明

2009 04 17 17 22 10 作者 軟體屋瀏覽次數 48 文字大小 大 中 小 在c語言的操作符中共有15個優先順序,具體排列如下 在c語言的操作符中共有15個優先順序,具體排列如下 說明 優先順序從上到下依次遞減,最上面具有最高的優先順序,逗號操作符具有最低的優先順序。所有的優先順序中,...