C语言中30多个运算符的优先级顺序

比如算术运算符(+-*/)的优先级大于关系运算符(<,<=,!=,==等等)大于逻辑运算符(!,&&,||)要有资料可寻,不要想当然的答案... 比如算术运算符(+-*/)的优先级大于关系运算符(<,<=,!=,==等等)大于逻辑运算符(!,&&,||)

要有资料可寻,不要想当然的答案
展开
 我来答
小夏聊生活
高能答主

2019-12-06 · 专注于分享生活知识,热爱生活
小夏聊生活
采纳数:447 获赞数:114573

向TA提问 私信TA
展开全部

32多个运算符的优先级顺序如下

1、auto    

声明自动变量    

2、short    

声明短整型变量或函数    

3、int    

声明整型变量或函数    

4、long    

声明长整型变量或函数    

5、float   

 声明浮点型变量或函数    

6、double   

 声明双精度变量或函数    

7、char  

  声明字符型变量或函数    

8、struct   

 声明结构体变量或函数    

9、union    

声明共用数据类型    

10、enum   

 声明枚举类型    

11、typedef   

 用以给数据类型取别名    

12、const    

声明只读变量    

13、unsigned  

声明无符号类型变量或函数    

14、signed   

 声明有符号类型变量或函数    

15、extern   

 声明变量是在其他文件正声明    

16、register  

 声明寄存器变量    

17、static  

声明静态变量    

18、volatile    

说明变量在程序执行中可被隐含地改变    

19、void    

声明函数无返回值或无参数,声明无类型指针    

20、if   

 条件语句    

21、else    

条件语句否定分支(与 if 连用)    

22、switch   

用于开关语句    

23、case   

开关语句分支    

24、for    

一种循环语句    

25、do 

循环语句的循环体    

26、while  

循环语句的循环条件    

27、goto

无条件跳转语句    

28、continue  

结束当前循环,开始下一轮循环    

29、break   

跳出当前循环    

30、default    

开关语句中的“其他”分支    

31、sizeof    

计算数据类型长度    

32、return    

子程序返回语句(可以带参数,也可不带参数)循环条件    

扩展资料

1、==和!=优先级相等,其他四个关系运算符的优先级相等,且前者的优先级低于后者。

如2==3>1 应该先计算3>1。

2、关系运算符中,若优先级相同,则“从左往右”结合。

如4>3<2,先计算4>3

3、关系运算符中的优先级小于算术运算符。

如3+4>8-2 相当于(3+4)> (8-2)

八哥说科技
高粉答主

2019-09-25 · 分享科技资讯,共享科技生活
八哥说科技
采纳数:111 获赞数:78582

向TA提问 私信TA
展开全部

优先级高到低:

第一级:圆括号“()”、下标运算符“[]”、分量运算符的指向结构体成员运算符“->”、结构体成员运算符“.”

第二级:逻辑非运算符“!”、按位取反运算符“~”、自增自减运算符“++ --”、负号运算符“-”、类型转换运算符“(类型)”、指针运算符和取地址运算符“*和&”、长度运算符“sizeof”

第三级:乘法运算符“*”、除法运算符“/”、取余运算符“%”

第四级:加法运算符“+”、减法运算符“-”

第五级:左移动运算符“<<”、右移动运算符“>>”

第六级:关系运算符“< > <= >= ”

第七级:等于运算符“==”、不等于运算符“!=”

第八级:按位与运算符“&”

第九级:按位异或运算符“^”

第十级:按位或运算符“|”

第十一级:逻辑与运算符“&&”

第十二级:逻辑或运算符“||”

第十三级:条件运算符“?:”

第十四级:赋值运算符“= += -= *= /= %= >>= <<.= &= |= ^=”

第十五级:逗号运算符“,”

扩展资料:

相关规定:

1、优先级与求值顺序无关。如a+b && b*c,虽然*优先级最高,但这个表达式求值顺序是从左到右。

2、优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。

3、相同优先级中,按结合性进行结合。大多数运算符结合性是从左到右,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。

4、基本的优先级:指针最优,单目运算优于双目运算。如正负号。先算术运算,后移位运算,最后位运算。请特别注意:1 << 3 + 2 & 7等价于 (1 << (3 + 2))&7。逻辑运算最后结合。

参考资料来源:百度百科-运算符优先级

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
木比白kai
推荐于2017-11-26 · TA获得超过229个赞
知道小有建树答主
回答量:279
采纳率:0%
帮助的人:220万
展开全部
c语言运算符号
1级优先级 左结合
() 圆括号
[] 下标运算符
-> 指向结构体成员运算符
. 结构体成员运算符
2级优先级 右结合
! 逻辑非运算符
~ 按位取反运算符
++ 自增运算符
-- 自减运算符
- 负号运算符
(类型) 类型转换运算符
* 指针运算符
& 地址与运算符
sizeof 长度运算符
3级优先级 左结合
* 乘法运算符
/ 除法运算符
% 取余运算符
4级优先级 左结合
+ 加法运算符
- 减法运算符
5级优先级 左结合
<< 左移运算符
>> 右移运算符
6级优先级 左结合
<、<=、>、>= 关系运算符
7级优先级 左结合
== 等于运算符
!= 不等于运算符
8级优先级 左结合
& 按位与运算符
9级优先级 左结合
^ 按位异或运算符
10级优先级 左结合
| 按位或运算符
11级优先级 左结合
&& 逻辑与运算符
12级优先级 左结合
|| 逻辑或运算符
13级优先级 右结合
? : 条件运算符
14级优先级 右结合
= += -= *= /= %= &= ^= |= <<= >>= 全为赋值运算符
15级优先级 左结合
, 逗号运算符
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wchyumo2011
推荐于2018-03-30 · TA获得超过2万个赞
知道大有可为答主
回答量:5810
采纳率:79%
帮助的人:2603万
展开全部

C语言中运算符优先级如下图,优先级数字越小的优先级越高。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
_sunboy
2008-10-19 · TA获得超过361个赞
知道答主
回答量:95
采纳率:0%
帮助的人:71.9万
展开全部
优先级:自上到下由高到低
|(){}〔〕.(结构体成员运算符)->(指向结构体成员运算符)
|单目运算符 !(非)--(自减)++(自加)~(按位取反)
|算术运算符+ - * % /
|关系运算符< > >= <= ==
|&&和||
|赋值运算符 =
|逗号运算符 (表达式1),(表达式2),(表达式3)...
还有就是左右运算顺序
a+b +为双目运算符, (a>b)?a:b 中? :为3目运算符. !a 为单目运算符.
单目,三目运算符都为自右向左结合,双目运算符除赋值运算符都为自左向右结合.

参考资料: http://www.77169.com/book/program/jscript/htm/jsoperatorpre.htm

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式