1樓:匿名使用者
1級優先順序 左結合
() 圓括號
下標運算子
-> 指向結構體成員運算子
. 結構體成員運算子
2級優先順序 右結合
! 邏輯非運算子
~ 按位取反運算子
++ 字首增量運算子
-- 字首增量運算子
+ 正號運算子
- 負號運算子
(型別) 型別轉換運算子
* 指標運算子
& 地址與運算子
sizeof 長度運算子
3級優先順序 左結合
* 乘法運算子
/ 除法運算子
% 取餘運算子
4級優先順序 左結合
+ 加法運算子
- 減法運算子
5級優先順序 左結合
<< 左移運算子
>> 右移運算子
6級優先順序 左結合
<、<=、>、>= 關係運算子
7級優先順序 左結合
== 等於運算子
!= 不等於運算子
8級優先順序 左結合
& 按位與運算子
9級優先順序 左結合
^ 按位異或運算子
10級優先順序 左結合
| 按位或運算子
11級優先順序 左結合
&& 邏輯與運算子
12級優先順序 左結合
|| 邏輯或運算子
13級優先順序 右結合
? : 條件運算子
14級優先順序 右結合
= += -= *= /= %= &= ^= |= <<= >>= 全為賦值運算子
15級優先順序 左結合
, 逗號運算子
優先順序從上到下依次遞減,最上面具有最高的優先順序,逗號操作符具有最低的優先順序。
所有的優先順序中,只有三個優先順序是從右至左結合的,它們是單目運算子、條件運算子、賦值運算子。其它的都是從左至右結合。
具有最高優先順序的其實並不算是真正的運算子,它們算是一類特殊的操作。()是與函式相關,與陣列相關,而->及.是取結構成員。
其次是單目運算子,所有的單目運算子具有相同的優先順序,因此在我認為的 真正的運算子中它們具有最高的優先順序,又由於它們都是從右至左結合的,因此*p++與*(p++)等效是毫無疑問的。
另外在c語言裡 沒有前置後置之分 因為++ -- 是右結合所以 右側優先運算 表現為 "後置優先順序比較高" 的假象 前置和後置的區分是因為運算子過載而後加入c++的
接下來是算術運算子,*、/、%的優先順序當然比+、-高了。
移位運算子緊隨其後。
其次的關係運算子中,< <= > >=要比 == !=高一個級別,不大好理解。
所有的邏輯操作符都具有不同的優先順序(單目運算子出外,!和~)
邏輯位操作符的"與"比"或"高,而"異或"則在它們之間。
跟在其後的&&比||高。
接下來的是條件運算子,賦值運算子及逗號運算子。
在c語言中,只有4個運算子規定了運算方向,它們是&&、| |、條件運算子及賦值運算子。
&&、| |都是先計算左邊表示式的值,當左邊表示式的值能確定整個表示式的值時,就不再計算右邊表示式的值。如 a = 0 && b; &&運算子的左邊位0,則右邊表示式b就不再判斷。
在條件運算子中。如a?b:c;先判斷a的值,再根據a的值對b或c之中的一個進行求值。
賦值表示式則規定先對右邊的表示式求值,因此使 a = b = c = 6;成為可能。
2樓:匿名使用者
按照先算小括號——大括號——乘除——加減的順序計算。
3樓:屈老師
優先順序從上到下依次遞減,最上面具有最高的優先順序,逗號操作符具有最低的優先順序。
相同優先順序中,按結合順序計算。大多數運算是從左至右計算,只有三個優先順序是從右至左結合的,它們是單目運算子、條件運算子、賦值運算子。
基本的優先順序需要記住:
指標最優,單目運算優於雙目運算。如正負號。
先乘除(模),後加減。
先算術運算,後移位運算,最後位運算。請特別注意:1 << 3 + 2 & 7等價於 (1 << (3 + 2))&7.
邏輯運算最後計算。
4樓:劉輸套
這個主要靠你的背誦記憶了,其時看的程式多了,自然就記住了~~
5樓:朱薈非
^(乘方)
*/+-
()可以改變運算子優先順序
c語言的運算子的優先順序:邏輯運算子、條件運算子、賦值運算子、關係運算子、算術運算子。它們之間的優先順序
6樓:反轉的天空之城
1、最高階:出現同級別運算子時的結合方向是從左往右(下面級別沒寫結合順序時,預設是從左往右)。
( )圓括號
[ ]下標運算子號
->指向結構體成員運算子
.結構體成員運算子
2、第二級:!、~、++、--、-、(型別)、*、&、sizeof。
這一級都是單目運算子號,這一級的結合方向是從右向左。
比如出現*p++,這時*和++同級別,先算右邊,再左邊。
所以*p++等價於*(p++),而不是(*p)++。
3、第**:+、-、*、/、%
這一級都是算術運算子,結合順序和數學學習中一致的,先乘除取餘數,後加減。
4、第四級:<<、>>
這是左移、右移運算子,位運算時可能需要用到。
5、第五級:<、<=、>、>=、!=、==
這些運算子也稱為關係運算子,其中<、<=、>、>=高於!=、==。
6、第六級:&、^、|
這三個符號也是位運算子號,其中內優先順序,&>^>|。
7、第七級:&&、||
邏輯與&&優先順序大於邏輯或||。
8、第八級:? :
也稱為條件運算子號,是c語言中唯一的一個三目運算子,結合順序是從右往左。
9、第九級:=、+=、-+、*=、/=、%=
這些運算子也叫做賦值運算子,除此之外,>>=、<<=、&=、^=、|=這些賦值運算子也在這一級別內,結合順序是從右往左。
10、最低階:,
逗號運算子也稱為順序求值運算子,在c語言中,運算級別最低。
c語言是一種計算機程式設計語言,它既具有高階語言的特點,又具有組合語言的特點。它由美國貝爾研究所的d.m.
ritchie於2023年推出,2023年後,c語言已先後被移植到大、中、小及微型機上,它可以作為工作系統設計語言,編寫系統應用程式,也可以作為應用程式設計語言,編寫不依賴計算機硬體的應用程式。它的應用範圍廣泛,具備很強的資料處理能力,不僅僅是在軟體開發上,而且各類科研都需要用到c語言,適於編寫系統軟體,三維,二維圖形和動畫,具體應用比如微控制器以及嵌入式系統開發。
運算子用於執行程式**運算,會針對一個以上運算元專案來進行運算。例如:2+3,其運算元是2和3,而運算子則是「+」。
在vb2005中運算子大致可以分為5種型別:算術運算子、連線運算子、關係運算子、賦值運算子和邏輯運算子。
7樓:
邏輯——算數——關係——條件判斷——賦值
8樓:匿名使用者
這個可以找一本c++的書看一下,上面有一章就是專門介紹這個的,有個表,一目瞭然,便於記憶,希望你能多看看書!
9樓:匿名使用者
一般而言,單目運算子優先順序較高,賦值運算子優先順序低。算術運算子優先順序較高,關係和邏輯運算子優先順序較低。多數運算子具有左結合性,單目運算子、三目運算子、賦值運算子具有右結合性。
恩,問這個問題的人太多了,懶得繼續回答,直接貼上來自己看。。。
優先順序運算子
名稱或含義
使用形式
結合方向說明1
陣列下標
陣列名[常量表示式]
左到右()
圓括號(表示式)/函式名(形參表)
.成員選擇(物件)
物件.成員名
->成員選擇(指標)
物件指標->成員名2-
負號運算子
-表示式
右到左單目運算子
(型別)
強制型別轉換
(資料型別)表示式
++自增運算子
++變數名/變數名++
單目運算子
--自減運算子
--變數名/變數名--
單目運算子
*取值運算子
*指標變數
單目運算子
&取地址運算子
&變數名
單目運算子
!邏輯非運算子
!表示式
單目運算子
~按位取反運算子
~表示式
單目運算子
sizeof
長度運算子
sizeof(表示式)3/
除表示式/表示式
左到右雙目運算子*乘
表示式*表示式
雙目運算子
%餘數(取模)
整型表示式/整型表示式
雙目運算子4+
加表示式+表示式
左到右雙目運算子-減
表示式-表示式
雙目運算子
5<<左移變數《表示式
左到右雙目運算子
>>右移變數》表示式
雙目運算子
6>大於表示式》表示式
左到右雙目運算子
>=大於等於
表示式》=表示式
雙目運算子
<小於表示式《表示式
雙目運算子
<=小於等於
表示式<=表示式
雙目運算子7==
等於表示式==表示式
左到右雙目運算子
!=不等於
表示式!= 表示式
雙目運算子8&
按位與表示式&表示式
左到右雙目運算子9^
按位異或
表示式^表示式
左到右雙目運算子10|
按位或表示式|表示式
左到右雙目運算子
11&&
邏輯與表示式&&表示式
左到右雙目運算子
12||
邏輯或表示式||表示式
左到右雙目運算子
13?:
條件運算子
表示式1? 表示式2: 表示式3
右到左三目運算子14=
賦值運算子
變數=表示式
右到左/=
除後賦值
變數/=表示式
*=乘後賦值
變數*=表示式
%=取模後賦值
變數%=表示式
+=加後賦值
變數+=表示式
-=減後賦值
變數-=表示式
<<=左移後賦值
變數<<=表示式
>>=右移後賦值
變數》=表示式
&=按位與後賦值
變數&=表示式
^=按位異或後賦值
變數^=表示式
|=按位或後賦值
變數|=表示式15,
逗號運算子
表示式,表示式,…
左到右從左向右順序運算
說明:同一優先順序的運算子,運算次序由結合方向所決定。
簡單記就是:! > 算術運算子 > 關係運算子 > && > || > 賦值運算子
算術運算子 邏輯運算子 關係運算子 哪個優先順序高 哪個底?
10樓:匿名使用者
算術運算子最高
關係運算子次之
邏輯運算子最低
例如:9>3+4&&7
先算3+4 再判斷9是不是大於7,再&&
11樓:匿名使用者
優先順序:
邏輯非!>算術運算子》關係運算子》邏輯與&&>邏輯或||
12樓:匿名使用者
邏輯運算子高
關係運算子低
c語言邏輯運算子包含哪幾個? 它們的優先順序如何?它的運算級別高於算術運算子,賦值運算子嗎?
13樓:匿名使用者
優先順序依次遞減: 算術運算子、關係運算子、邏輯運算子、條件運算子、賦值運算子 絕對正確的。
14樓:會盡快解答
&&(邏輯與) ||(邏輯或) !(邏輯非)
!>&&>||>算數運輸符》賦值運算子(賦值運算子2級運算 差不多可以說是最低的了)
關於c運算子優先順序和的,C中運算子優先順序的問題
a和a 含義不同啊,a 表明先執行後加減,所以還是從0開始的。c 中運算子優先順序的問題 假定陣列是 int y 指標是 int symbol y int x 222 語句 symbol x 因為是字尾 表示式裡不自增,故計算分2步走,版1 1 symbol x 1 2 symbol symbol ...
excel中公式中運算子的優先順序
運算子優先順序 引用運算子 算術運算子 連線運算子 比較運算子引用運算子優先順序 冒號 單個空格 逗號 算術運算子優先順序 負數 如 1 百分比 乘方 和 乘和除 和 加和減 連線運算子優先順序 連線兩個文字字串 串連 比較運算子 或 小於或大於 不小於 不等於 注 這些比較運算子是屬同級運算 使用...
c語言中的運算子優先順序高低是什麼意思
運算子用於執行程式 運算,會針對一個以上運算元專案來進行運算。例如 2 3,其運算元是2和3,而運算子則是 運算子的優先順序是從上到下依次遞減,最上面具有最高的優先順序,逗號操作符具有最低的優先順序。表示式的結合次序取決於表示式中各種運算子的優先順序。優先順序高的運算子先結合,優先順序低的運算子後結...