双目运算符大多数具有 左结合性
单目运算符大多数具有 右结合性
a>b && c>d 等价于 (a>b)&&(c>d)
见运算符优先级
if(i==1)尽量写成 if(1==i)防止写成单个等号
c语言中,任何非零的数像1,-1都是真,0为假
条件运算符
条件运算符 ?和: 三目运算符
表达式1?表达式2:表达式3
求值规则:如果表达式的值为真,则以表达式2的值作为条件表达式的值,否则以表达式2的值作为整个表达式的值
max=a>b?a:b
如果a>b则max=a,a<b则max=b
条件运算符的结合方向是自右向左
a>b?a:c>d?c:d应看成a>b?a:(c>d?c:d)
先运算(c>d?c:d)在运算a>b
switch
case后要加break,若不加,则会顺序执行所有case
defult:默认,没有的case则默认执行default
switch后常量表达式不能相同
case后可以有多个语句,不需要{}
各case,default先后顺序可以变动
default字句可以省略