C语言运算符优先级列表(超详细)Word版

合集下载

C语言运算符优先级列表(超详细)

C语言运算符优先级列表(超详细)
本篇文章是对C语言中运算符的优先级进行了详细的分析介绍,需要的朋友参考下
每当想找哪个运算符优先级高时,很多时候总是想找的就没有,真让人气愤!现在,终于有个我个人觉得非常全的,分享给大家,欢迎拍砖!
C语言运算符优先级
优先级
运算符
名称或含义
使用形式
结合方向
说明
1
[]
数组下标
数组名[常量表达式]
左到右
--
11
&&
逻辑与
表达式&&表达式
左到右
双目运算符
12
||
逻辑或
表达式||表达式
左到右
双目运算符
13
?:
条件运算符
表达式1?
表达式2: 表达式3
右到左
三目运算符
14
=
赋值运算符
变量=表达式
右到左
--
/=
除后赋值
变量/=表达式
--
*=
乘后赋值
变量*=表达式
--
%=
取模后赋值
变量%=表达式
--
+=
加后赋值
变量+=表达式
()
圆括号
(表达式)/函数名(形参表)
--
.
成员选择(对象)
对象.成员名
--
->
成员选择(指针)
对象指针->成员名
--
2
-
负号运算符
-表达式
右到左
单目运算符
~
按位取反运算符
~表达式
++
自增运算符
++变量名/变量名++

C语言运算符优先级

C语言运算符优先级

1
-> (类型) ++ -* & ! ~ sizeof / * % + << >> > >= < <= == != & ^ | && || ?: = /= *= %= += -= <<= >>=
2
3 4 5
6 7 8 9 10 11 12 13
~表达式 sizeof(表达式) 表达式/表达式 表达式*表达式 整型表达式/整型表达 余数(取模) 式 加 表达式+表达式 减 表达式-表达式 左移 变量<<表达式 右移 变量>>表达式 大于 表达式>表达式 大于等于 表达式>=表达式 小于 表达式<表达式 小于等于 表达式<=表达式 等于 表达式==表达式 不等于 表达式!= 表达式 按位与 表达式&表达式 按位异或 表达式^表达式 按位或 表达式|表达式 逻辑与 表达式&&表达式 逻辑或 表达式||表达式 表达式1? 表达式2: 表 条件运算符 达式3 赋值运算符 变量=表达式 除后赋值 变量/=表达式 乘后赋值 变量*=表达式 取模后赋值 变量%=表达式 加后赋值 变量+=表达式 减后赋值 变量-=表达式 左移后赋值 变量<<=表达式 右移后赋值 变量>>=表达式
优先级
运算符 [] () .
名称或含义 数组下标 圆括号 成员选择(对 象) 成员选择(指 针) 负号运算符 强制类型转换 自增运算符 自减运算符 取值运算符 取地址运算符 逻辑非运算符 按位取反运算 符 长度运算符 除 乘
使用形式 结合方向 数组名[常量表达式] (表达式)/函数名(形 参表) 对象.成员名 对象指针->成员名 -表达式 (数据类型)表达式 ++变量名/变量名++ --变量名/变量名-*指针变量 &变量名 !表达式 左到右

C语言运算符优先级列表(超详细)

C语言运算符优先级列表(超详细)

C 语⾔运算符优先级列表(超详细)每当想找哪个运算符优先级⾼时,很多时候总是想找的就没有,真让⼈⽓愤!现在,终于有个我个⼈觉得⾮常全的,分享给⼤家,欢迎拍砖!数组下标数组名[常量表达式]左到右--圆括号(表达式)/函数名(形参表)--成员选择(对象)对象.成员名--成员选择(指针)对象指针->成员名--负号运算符-表达式单⽬运算符按位取反运算符~表达式⾃增运算符++变量名/变量名++⾃减运算符--变量名/变量名--取值运算符*指针变量取地址运算符&变量名逻辑⾮运算符!表达式强制类型转换(数据类型)表达式--长度运算符sizeof(表达式)--除表达式/表达式左到右双⽬运算符乘表达式*表达式余数(取模)整型表达式%整型表达式加表达式+表达式左到右双⽬运算符减表达式-表达式左移变量<<表达式左到右双⽬运算符右移变量>>表达式 ⼤于表达式>表达式左到右双⽬运算符⼤于等于表达式>=表达式⼩于表达式<表达式⼩于等于表达式<=表达式等于表达式==表达式左到右双⽬运算符不等于表达式!= 表达式按位与表达式&表达式左到右双⽬运算符按位异或表达式^表达式左到右双⽬运算符按位或表达式|表达式左到右双⽬运算符逻辑与表达式&&表达式左到右双⽬运算符逻辑或表达式||表达式左到右双⽬运算符条件运算符表达式1?表达式2: 表达式3三⽬运算符赋值运算符变量=表达式--除后赋值变量/=表达式--乘后赋值变量*=表达式--取模后赋值变量%=表达式--加后赋值变量+=表达式--减后赋值变量-=表达式--左移后赋值变量<<=表达式--右移后赋值变量>>=表达式--按位与后赋值变量&=表达式--按位异或后赋值变量^=表达式--按位或后赋值变量|=表达式--按位或后赋值变量|=表达式--逗号运算符表达式,表达式,…左到右--。

C语言运算符优先级

C语言运算符优先级

page 2
本文由汽泡爱泡泡贡献 doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机 查看。 附录 2 C 语言中的运算符及其优先级 C 语言中的运算符及其优先级 优先级 运算符 [] () 1 . -> (类型) ++ -2 * & !  ̄ sizeof / 3 * % + 4 << 5 >> 6 306 名称或含义 数组下标 圆括号 成员选择(对 象) 成员选择(指 针) 负号运 算符 强制类型转换 自增运算符 自减运算符 取值运算符 取地址运算符 逻辑非运算 符 按位取反运算 符 长度运算符 除 乘 余数(取模) 加 减 左移 右移 大于 使用形式 数组名[常量表达 式] (表达式) /函数名 (形参表) 对象.成员名 对象指针->成员名 -表达式 (数据类型)表达式 ++变量名/变量名 ++ --变量名/变量 名 -*指针变量 &变量名 !表达式  ̄表达式 sizeof(表达式) 表达式/表达式 表达式* 表达式 整型表达式/整型 表达式 表达式+表达式 结合方 向 说明 左到运算 符 单目运算 符 双目运算 符 双目运算 符 双目运算 符 双目运算 符 双目运算 符 双目运算 符 双目运算 符 双目运算 符 右到左 左到右 左到右 表达式-表达式 变量<<表达式 左到右 变量>>表达式 表达式>表达式 左 到右 > 附录 2 C 语言中的运算符及其优先级 >= < <= == 7 != 8 9 10 11 12 13 & ^ | && || ?: = /= *= %= += -= <<= > >= &= ^= |= 15 , 大于等于 小于 小于等于 等于 不等于 按位与 按位异或 按位或 逻辑与 逻辑 或 条件运算符 赋值运算符 除后赋值 乘后赋值 取模后赋值 加后赋值 减后赋值 左 移后赋值 右移后赋值 按位与后赋值 按位异或后赋 值 按位或后赋值 逗号运算符 表达式>=表达式 表达式<表达式 表达式<=表达式 表达式==表达式 左到右 表达 式!= 表达式 表达式&表达式 表达式^表达式 表达式|表达式 表达式&&表达式 表达式 ||表达式 表达式 1? 表达式 2: 表达式 3 变量=表达式 变量/=表达式 变量*=表达式 变量%=表达式 变量+=表达式 变量-=表达式 变量<<=表达式 变量>>=表达式 变量&= 表达式 变量^=表达式 变量|=表达式 表达式,表达式,… 左到右 左到右 左到右 左到 右 左到右 左到右 右到左 双目运算 符 双目运算 符 双目运算 符 双目运算 符 双目运算 符 双目运算 符 双目运算 符 双目运算 符 双目运算 符 双目运算 符 三目运算 符 14 右到左 从左向右 顺序运算 307 1本文由汽泡爱泡泡贡献 doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机 查看。 附录 2 C 语言中的运算符及其优先级 C 语言中的运算符及其优先级 优先级 运算符 [] () 1 . -> (类型) ++ -2 * & !  ̄ sizeof / 3 * % + 4 << 5 >> 6

c语言中优先级顺序表

c语言中优先级顺序表

c语言中优先级顺序表
C语言中优先级顺序:
1、括号(( ) ):在C语言中,括号具有最高优先级,符号前后的优先级也是一样的;
2、先乘法/除法(*,/):先乘法再除法的优先级高于+-,留意乘除的关系;
3、加法/减法(+,-):加法减法的优先级就相对低一些,但是对于负数来说先计算会更明晰些;
4、左移位(<<)右移位(>>):C语言中左移位右移位的优先级是和乘除/加减平级的,且比其低;
5、关系运算符(>,<,>=,<=,==,!=):C语言中关系运算符的优先级还比较高,且等于号的优先级比最高;
6、位运算符(&,|,^):在C语言中位运算符的优先级位于关系运算符之下,就比上面的低一个级别;
7、逻辑与(&&)及逻辑或(||):C语言中逻辑与及逻辑或的优先级最低,且优先级大小一样。

C语言运算符优先级

C语言运算符优先级

每当想找哪个运算符优先级高时,很多时候总是想找的就没有,真让人气愤!现在,终于有个我个人觉得非常全的,分享给大家,欢迎拍砖!C语言运算符优先级C语言运算符优先级和口诀一共有十五个优先级:1 () [] . ->2 ! ~ -(负号)++ -- &(取变量地址)* (type)(强制类型) sizeof3 * / %4 + -5 >> <<6 > >= < <=7 == !=8 &9 ^10 |11 &&12 ||13 ?:14 = += -= *= /= %= |= ^= &= >>= <<=15 ,就着多吧结合性:2 13 14 是从右至左其他都是从左至右有问题可以在交流的共同进步括号成员第一; //括号运算符[]() 成员运算符. ->全体单目第二; //所有的单目运算符比如++、--、+(正)、-(负) 、指针运算*、&乘除余三,加减四; //这个"余"是指取余运算即%移位五,关系六; //移位运算符:<< >> ,关系:> < >= <= 等等于(与)不等排第七; //即== 和!=位与异或和位或; //这几个都是位运算: 位与(&)异或(^)位或(|)"三分天下"八九十;逻辑或跟与; //逻辑运算符:|| 和&&十二和十一; //注意顺序:优先级(||) 底于优先级(&&)条件高于赋值, //三目运算符优先级排到13 位只比赋值运算符和","高逗号运算级最低! //逗号运算符优先级最低。

c语言符号优先级排序

c语言符号优先级排序

在C语言中,运算符的优先级是由语言的语法规则定义的,以下是C语言运算符优先级从高到低的列表:1. 后置 ++ 和 --2. 前置 ++ 和 --,一元 + 和 -,逻辑非 (!)3. 乘法 (*, /) 和除法 (%)4. 加法 (+)、减法 (-) 和位移 (<<, >>)5. 比较 (==, !=, <, >, <=, >=)6. 赋值 (=, +=, -=, *=, /=, %=, <<=, >>=)7. 按位与 (&)8. 按位异或 (^)9. 按位或 (|)10. 逻辑与 (&&)11. 逻辑或 (||)12. 条件 (?:)13. 前置和后置类型转换 (->, .)14. 下标访问 ([])15. 函数调用 (())16. 逗号 (,)17. 成员指针访问 (->)18. 指向成员指针的箭头 (&)19. 类型转换 (type)20. 乘性赋值运算符 *=, /=, %=, <<=, >>=21. 加性赋值运算符 +=, -=22. 减性赋值运算符 -=23. 乘性赋值运算符 *=24. 加性赋值运算符 +=25. 位复制赋值运算符 ^=26. 位非复制赋值运算符 &=, |=, ^=27. 算术赋值运算符-=, *=, /=, %=, +=, -=, *=, /=, %=, <<=, >>=28. 自增、自减运算符 ++ 和 -- (这些是特殊情况,它们的优先级低于赋值运算符)请注意,这些优先级是根据语言规则确定的,但实际的实现可能会有所不同。

此外,如果你在一个表达式中使用了不同类型的运算符,那么实际的执行顺序可能会根据运算符的优先级和结合性来确定。

例如,乘法和除法运算符具有比加法和减法运算符更高的优先级,但在一个表达式中,如果一个操作数被括号包围,那么括号内的表达式将首先被计算。

C运算符优先级

C运算符优先级

C语言符号优先级优先级运算符名称或含义使用形式结合方向说明1[]数组下标数组名[常量表达式]左到右()圆括号(表达式)/函数名(形参表).成员选择(对象)对象.成员名->成员选择(指针)对象指针->成员名2-负号运算符-表达式右到左单目运算符(类型)强制类型转换(数据类型)表达式++自增运算符++变量名/变量名++单目运算符--自减运算符--变量名/变量名--单目运算符*取值运算符*指针变量单目运算符&取地址运算符&变量名单目运算符!逻辑非运算符!表达式单目运算符~按位取反运算符~表达式单目运算符sizeof长度运算符sizeof(表达式)3/除表达式/表达式左到右双目运算符*乘表达式*表达式双目运算符%余数(取模)整型表达式/整型表达式双目运算符4+加表达式+表达式左到右双目运算符-减表达式-表达式双目运算符5<< 左移变量<<表达式左到右双目运算符>> 右移变量>>表达式双目运算符6> 大于表达式>表达式左到右双目运算符>=大于等于表达式>=表达式双目运算符< 小于表达式<表达式双目运算符<=小于等于表达式<=表达式双目运算符7==等于表达式==表达式左到右双目运算符!=不等于表达式!= 表达式双目运算符8&按位与表达式&表达式左到右双目运算符9^按位异或表达式^表达式左到右双目运算符10|按位或表达式|表达式左到右双目运算符11&&逻辑与表达式&&表达式左到右双目运算符12||逻辑或表达式||表达式左到右双目运算符13?:条件运算符表达式1? 表达式2:表达式3右到左三目运算符14=赋值运算符变量=表达式右到左/=除后赋值变量/=表达式*=乘后赋值变量*=表达式%=取模后赋值变量%=表达式+=加后赋值变量+=表达式-=减后赋值变量-=表达式<<=左移后赋值变量<<=表达式>>=右移后赋值变量>>=表达式&=按位与后赋值变量&=表达式^=按位异或后赋值变量^=表达式|=按位或后赋值变量|=表达式15,逗号运算符表达式,表达式,…左到右从左向右顺序运算说明:同一优先级的运算符,运算次序由结合方向所决定。

C语言超详细运算符优先级列表

C语言超详细运算符优先级列表
--
自减运算符
--变量名/变量名--
*
取值运算符
*指针变量
&
取地址运算符
&变量名
!
逻辑非运算符
!表达式
(类型)
强制类型转换
(数据类型)表达式
--
sizeof
长度运算符
sizeof(表达式)
--
3
/

表达式/表达式
左到右
双目运算符
*

表达式*表达式
%
余数(取模)
整型表达式%整型表达式
4
+

表达式+表达式
--
15

逗号运算符
表达式,表达式,…
左到右
--
说明:
同一优先级的运算符,运算次序由结合方向所决定。
简单记就是:! > 算术运算符 > 关系运算符 > && > || > 赋值运算符
变量/=表达式
--
*=
乘后赋值
变量*=表达式
--
%=
取模后赋值
变量%=表达式
--
+=
加后赋值
变量+=表达式
--
-=
减后赋值
变量-=表达式
--
<<=
左移后赋值
变量<<=表达式
--
>>=
右移后赋值
变量>>=表达式
--
&=
按位与后赋值
变量&=表达式
--
^=
按位异或后赋值
变量^=表达式
--
|=

c语言运算优先顺序

c语言运算优先顺序

c语言运算优先顺序
C语言中的运算符优先级顺序如下(由高到低):
1. 小括号(())
2. 一元运算符(正负号、位求反、逻辑非等)
3. 乘法、除法与取余(*、/、%)
4. 加法与减法(+、-)
5. 移位运算(<<、>>)
6. 关系运算符(<、>、<=、>=)
7. 相等运算符(==、!=)
8. 位运算符(按位与、按位或、按位异或等)
9. 逻辑运算符(逻辑与、逻辑或)
10. 条件运算符(三目运算符)
11. 赋值运算符(=、+=、-=等)
12. 逗号运算符(,)
在表达式中,括号可以改变运算符的优先级,括号中的表达式会先被计算。

当运算符的优先级相同时,根据结合性(从左到右或从右到左)来决定运算顺序。

c运算符优先级顺序表

c运算符优先级顺序表

c运算符优先级顺序表一、一元运算符的优先级1. 正负号(+/-):正号可以忽略,负号可以取反一个数的正负号,如-3表示一个负数。

2. 递增/递减(++/--):对变量的值递增或递减,放在表达式的左侧递增1,放在右侧递减1。

二、乘、除、取模的优先级1. 乘(*):两个数相乘,可以用于整数与实数,浮点数、复数;2. 除(/):两个数相除,可以用于整数与实数,浮点数、复数;3. 取模(%):对两个正整数数求余,取余数的结果为非负整数。

三、加、减的优先级1. 加(+):两个数相加,可以用于整数与实数,浮点数、复数;2. 减(-):两个数相减,可以用于整数与实数,浮点数、复数;1. 等于(==):比较两个对象是否相等;2. 不等于(!=):比较两个对象是否不相等;3. 大于(>):比较两个整数或实数大小;4. 大于等于(>=):比较两个整数或实数大小;5. 小于(<):比较两个整数或实数大小;6. 小于等于(<=):比较两个整数或实数大小;五、逻辑运算符的优先级1. 逻辑非(!):对一个表达式求反,逻辑真(1)取逆后变为逻辑假(0),逻辑假取逆后变为逻辑真;2. 逻辑与(&&):两个表达式都为真时,整个表达式为真;3. 逻辑或(||):任何一个表达式为真时,整个表达式为真;4. 逻辑异或(^):只有一个表达式为真时,整个表达式为真;1. 问号(?):用来作为三元条件运算符,如果第一个条件判断结果为真,则返回第二个表达式的值;如果第一个条件判断结果为假,则返回第三个表达式的值;2. 冒号(:):配合问号(?)使用,表示根据上一个条件值的真假,运行不同的表达式;3. 赋值运算符(=):配合条件运算符一起使用,先将第一个表达式的值赋予变量,然后根据条件,将第二或第三个表达式的值给相应的变量;七、逗号、赋值运算符的优先级1. 逗号(,):用逗号分隔多个表达式,从左至右依次计算;2. 赋值运算符(=):将右侧表达式的值赋给左侧变量,赋值运算符右侧先运算,再赋值。

C语言运算符优先级次序表

C语言运算符优先级次序表

运算形式 (e) a[e] p->x x.y !e ~e
++x或x++ --x或x--
-e (类型)e
*p &x sizeof(t)
e1*e2
e1+e2
e1<<e2
e1<e2
e1==e2 e1&e2 e1^e2 e1|e2 e1&&e2 e1||e2 e1?e2:e3 x=e
x+=e
e1,e2
名称或含义 圆括号 数组下标
(单目运算符)1
左<-右
2
左->右
2
左->右
左->右
2
左->右
2
左->右
2
左->右
2
左->右
2
左->右
2
Hale Waihona Puke 左->右2左->右
3
左<-右
2
左<-右
左->右
注:运算形式一栏中各字母的含义如下:a-数组, e-表达式, p-指针, t-类型, x,y-变量.
优先级 1
2
3 4 5 6 7 8 9 10 11 12 13
14
15
运算符 () [] -> . ! ~ ++ --+ (类型) * & sizeof * / % + << >> < <= > >= == != & ^ | && || ?: = += -= *= /= %= >>= <<= &= ^= |= ,

C语言优先级

C语言优先级

分类优先级操作符功能描述用法示例结果类型结合性是否控制求值顺序1()聚组括号( 表达式 )与表达式同N/A 否2()函数调用Rexp( Rexp,…,Rexp )Lexp L-R 否3[]下标引用Rexp[Rexp]Lexp L-R 否4.访问结构成员Lexp.member_name Lexp L-R 否5->访问结构指针成员Rexp->member_name Rexp L-R 否6++后缀自增Lexp++Rexp L-R 否7--后缀自减Lexp--Rexp L-R 否8!逻辑反 !Rexp Rexp R-L 否9~按位取反 ~Rexp Rexp R-L 否10+单目,表示正值 +Rexp Rexp R-L 否11-单目,表示负值 -Rexp Rexp R-L 否12++前缀自增 ++Lexp Rexp R-L 否13--前缀自减 --Lexp Rexp R-L 否14*间接访问*Rexp Lexp R-L 否15&取地址&Rexp Rexp R-L 否16sizeof 取其长度,用字节表示sizeof Rexp/(类型)Rexp R-L 否17(类型)类型转换(类型)Rexp Rexp R-L 否18*乘法Rexp * Rexp Rexp L-R 否19/除法Rexp / Rexp Rexp L-R 否20%整数取余Rexp % Rexp Rexp L-R 否21+加法Rexp + Rexp Rexp L-R 否22-减法Rexp - Rexp Rexp L-R 否23<<左移位Rexp << Rexp Rexp L-R 否24>>右移位Rexp >> Rexp Rexp L-R 否25>大于Rexp > Rexp Rexp L-R 否26>=大于等于Rexp >= Rexp Rexp L-R 否27<小于Rexp < Rexp Rexp L-R 否28<=小于等于Rexp <= Rexp Rexp L-R 否29==等于Rexp == Rexp Rexp L-R 否30!=不等于Rexp != Rexp Rexp L-R 否31&位与Rexp & Rexp Rexp L-R 否32^位异或Rexp ^ Rexp Rexp L-R 否33|位或Rexp | Rexp Rexp L-R 否34&&逻辑与Rexp && Rexp Rexp L-R 是35||逻辑或Rexp || Rexp Rexp L-R 是条件36?:条件操作符Rexp ? Rexp : Rexp Rexp N/A 是37=赋值Lexp = Rexp Rexp R-L 否38+=以…加Lexp += Rexp Rexp R-L 否39-=以…减Lexp -= Rexp Rexp R-L 否40*=以…乘Lexp *= Rexp Rexp R-L 否41/=以…除Lexp /= Rexp Rexp R-L 否42%=以…取模Lexp %= Rexp Rexp R-L 否43<<=以…左移Lexp <<= Rexp Rexp R-L 否44>>=以…右移Lexp >>= Rexp Rexp R-L 否45&=以…与Lexp &= Rexp Rexp R-L 否46^=以…异或Lexp ^= Rexp Rexp R-L 否47|=以…或Lexp |= Rexp Rexp R-L 否逗号48 ,逗号Rexp , Rexp Rexp L-R 是算术赋值类逻辑比较移位 C 语言操作符优先级表格 注:Lexp,Rexp 分别表示左值右值表达式逻辑其他其他。

c语言运算符优先级

c语言运算符优先级

C语言的运算符众多,具有不同的优先级和结合性,我们将它们全部列了出来,方便大家对比和记优先级运算符名称或含义使用形式结合方向说明[]数组下标数组名[常量表达式]()圆括号(表达式)/函数名(形参表).成员选择(对象)对象.成员名->成员选择(指针)对象指针->成员名-负号运算符-表达式单目运算符(类型)强制类型转换(数据类型)表达式++自增运算符++变量名/变量名++单目运算符--自减运算符--变量名/变量名--单目运算符*取值运算符*指针变量单目运算符&取地址运算符&变量名单目运算符!逻辑非运算符!表达式单目运算符~按位取反运算符~表达式单目运算符sizeof 长度运算符sizeof(表达式)/除表达式/表达式双目运算符*乘表达式*表达式双目运算符%余数(取模)整型表达式/整型表达式双目运算符+加表达式+表达式双目运算符-减表达式-表达式双目运算符<<左移变量<<表达式双目运算符>>右移变量>>表达式双目运算符>大于表达式>表达式双目运算符>=大于等于表达式>=表达式双目运算符<小于表达式<表达式双目运算符<=小于等于表达式<=表达式双目运算符==等于表达式==表达式双目运算符!=不等于表达式!= 表达式双目运算符8&按位与表达式&表达式左到右双目运算符9^按位异或表达式^表达式左到右双目运算符10|按位或表达式|表达式左到右双目运算符11&&逻辑与表达式&&表达式左到右双目运算符12||逻辑或表达式||表达式左到右双目运算符13?:条件运算符表达式1? 表达式2: 表达式3右到左三目运算符1左到右2右到左3左到右7左到右4左到右5左到右6左到右=赋值运算符变量=表达式/=除后赋值变量/=表达式*=乘后赋值变量*=表达式%=取模后赋值变量%=表达式+=加后赋值变量+=表达式-=减后赋值变量-=表达式<<=左移后赋值变量<<=表达式>>=右移后赋值变量>>=表达式&=按位与后赋值变量&=表达式^=按位异或后赋值变量^=表达式|=按位或后赋值变量|=表达式15,逗号运算符表达式,表达式,…左到右从左向右顺序运算注:同一优先级的运算符,运算次序由结合方向所决定。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
()
圆括号
(表达式)/函数名(形参表)
--
.
成员选择(对象)
对象.成员名
--
->
成员选择(指针)
对象指针->成员名
--
2
-
负号运算符
-表达式
右到左
单目运算符
~
按位取反运算符
~表达式
++
自增运算符
++变量名/变量名++
--
自减运算符
--变量名/变量名--
*
取值运算符
*指针变量
&
取地址运算符
&变量名
!
逻辑非运算符
!表达式
(类型)
强制类型转换
(数据类型)表达式
--
sizeof
长度运算符
sizeof(表达式)
--
3
/

表达式/表达式
左到右
双目运算符
*

表达式*表达式
%
余数(取模)
整型表达式%整型表达式
4
+

表达式+表达式
左到右
双目运算符
-

表达式-表达式
5
<<
左移
变量<<表达式
左到右
双目运算符
>>
右移
变量>>表达式
11
&&
逻辑与
表达式&&表达式
左到右
双目运算符
12
||
逻辑或
表达式||表达式
左到右
双目运算符
13
?:
条件运算符
表达式1?
表达式2: 表达式3
右到左
三目运算符
14
=
赋值运算符
变量=表达式
右到左
--
/=
除后赋值
变量/=表达式
--
*=
乘后赋值
变量*=表达式
--
%=
取模后赋值
变量%=表达式
--
+=
加后赋值
变量+=表达式
本篇文章是对C语言中运算符的优先级进行了详细的分析介绍,需要的朋友参考下
每当想找哪个运算符优先级高时,很多时候总是想找的就没有,真让人气愤!现在,终于有个我个人觉得非常全的,分享给大家,欢迎拍砖!
C语言运算符优先级
优先级
运算符
名称或含义
使用形式
结合方向
说明
1
[]
数组下标
数组名[常量表达式]
左到右
--
6
>
大于
表达式>表达式
左到右
双目运
算符
>=
大于等于
表达式>=表达式
<
小于
表达式<表达式
<=
小于等于
表达式<=表达式
7
==
等于
表达式==表达式
左到右
双目运算符
!=
不等于
表达式!= 表达式
8
&
按位与
表达式&表达式
左到右
双目运算符
9
^
按位异或
表达式^表达式
左到右
双目运算符
10
|
按位或
表达式|表达式
左到右
Байду номын сангаас双目运算符
--
-=
减后赋值
变量-=表达式
--
<<=
左移后赋值
变量<<=表达式
--
>>=
右移后赋值
变量>>=表达式
--
&=
按位与后赋值
变量&=表达式
--
^=
按位异或后赋值
变量^=表达式
--
|=
按位或后赋值
变量|=表达式
--
15

逗号运算符
表达式,表达式,…
左到右
--
说明:
同一优先级的运算符,运算次序由结合方向所决定。
简单记就是:! > 算术运算符 > 关系运算符 > && > || > 赋值运算符
(注:可编辑下载,若有不当之处,请指正,谢谢!)
相关文档
最新文档