打印
[经验分享]

转:单片机C语言运算符的优先级和结合性

[复制链接]
1608|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
中国无芯|  楼主 | 2011-11-12 16:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
运算符的优先级和结合性
优先级操作符功能结合性
1(最高)()改变优先级
从左到右






2
[]数组下标
->指向结构体成员
.结构体成员

++;–
自增1;自减1(++i,–i: 在使用之前,先使i值加(减)1;i++在使用之后再使i值加(减)1)



从右到左
&取地址
*取内容
逻辑 (非)求反 (! 条件式)
~按位取反
+、-取正数、负数
()强制类型转换
sizeof取所占内存字节数
3*、/、%乘法、除法、取余



从左到右
4+、-加法、减法
5<<、>>左移位、右移位
6<、<=、>、>=、小于、小于等于、大于、
大于等于
7= =、!=等于、不等于
8&按位与
9^按位异或
10|按位或
11&&逻辑与
12||逻辑或
13?:条件运算符从右到左





14
+=加法赋值




从右至左
-=减法赋值
*=乘法赋值
/=除法赋值
%=取模赋值
<<=左移位赋值
>>=右移位赋值
| =逻辑或赋值
& =逻辑与赋值
^ =逻辑异或赋值
~ =逻辑非赋值
15(最低)
逗号运算符,顺序求值
从左至右
说明:同一优先级的运算符由结合方向确定
沙发
CPU单线程| | 2011-11-12 16:42 | 只看该作者
还是用的时候加括号吧,否则记着麻烦

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

103

帖子

1

粉丝