C语言的运算符的优先级记住下面两句话:
0>1>2>3
1+1>2?
第一句表示限定符大于一元运算符大于两元运算符大于三元运算符
限定符:.- > () [] 4个
一元运算符:涉及一个操作数,一般右结合(运算符和右边数一起构成表达式)
两元运算符:涉及两个操作数
三元运算符:?:,只有一个
其中两元运算符最复杂,第二句就是来记忆二元运算符的:1+1表示算术运算 >表示关系运算, ?(吗)表示判断,逻辑运算
其中算术运算中 * 、/ 高于加减 关系运算:> , >=, < ,<=,==,!= 同级
逻辑运算:&&, ||, ! 非肯定最高,与次之,或最低
以上已经把运算符的绝大部分内容记住了,最后在记住赋值低,逗号更低
左移右移做最低级的算术运算(左移是乘,右移是除)
位运算也是逻辑运算,但优先级高
当然最好是用()标示出运算关系,不要让别人猜测