C运算符的优先级速记法


相信最初学C语言的朋友大都背过它的运算符优先级,我当时是背的没有忘的快;

后来就不太在意了,因为写代码时不确定的就通过括号来保证,这也是一些编程规范里提倡的,

但有时当读别人代码时你就又可能存在某些不确定的地方了,直到最近我发现了一个口决,真的很好,

可以很快就把所有优先级顺序都轻松记住。


口决如下 :

圆下箭头一顿号

非凡增减富强星地长(chang)

三乘除、四加减、五移位

千万别把鱼忘记,它在盛饭的厨子里

小灯大灯灯灯不等

爸喂鱼、舅疑惑、裸鸡也疑惑

十三姨、十四父、十五逗、兜到底


解析:

“圆下箭头一顿号”,圆指运算符(),下指下标运算符[],箭头指的是指向结构体成员运算符->,顿号也是结构体成员运算

符.


“非凡增减富强星地长”,非指逻辑运算符!,凡指按位取反运算符~,增减指的是自增自减运算符,++,--,富指的是负号

运算符-,

强指的是强制类型转换运算符(type),星指的是指针运算符*,地指的是地址运算符&,长指的是求长度运算符sizeof

 

“三乘除、四加减、五移位”,三四五指的是运算符的优先级,并无实际意义,只是区分级别用。乘除、加减、移位分别代

表算术运算符*/ + - << >>

 

“千万别把鱼忘记,它在盛饭的厨子里”,指求余运算符,它在乘除运算符那一级别

 

“小灯大灯灯灯不等” 指关系运算符 < <= > >=; == !=

 

“爸喂鱼、舅疑惑、裸鸡也疑惑”分别指按位与 &,按位异或 ^,另外还有再低一级的运算符按位或| ,裸鸡也疑惑指逻辑

运算符 逻辑与 && 逻辑或||

 

“十三姨、十四父、十五逗、兜到底”,姨指条件运算符 ?: (三有双重含义,它的优先级是十三,并且它是三目运算符,难

道不姨即疑惑吗),

十四父指的是赋值运算符 = += -= *=/= %= &= ^= |= <<= >>=

十五逗指逗号运算符,兜到底,OK结束。



附运算符表 :


关联运算符  () []-> .

一元运算符 ! ~ ++ -- + - * & (type) sizeof  自右向左

乘法和除法 * / %

加法和减法 + -

移位运算符 << >>

关系运算符 < <= > >=

“相等”比较 == !=

位运算符 &

位运算符 ^

位运算符 |

逻辑运算符 &&

逻辑运算符  ||

条件运算符  ? :

赋值运算符 = += -= *= /= %= &= ^= |= <<=>>=

逗号运算符  ,



   

转载于:https://my.oschina.net/czzhu/blog/202444

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值