运算符: 在C语言中用来表示某种计算的符号
操作数: 运算符操作的对象,可以为变量(已赋值)、常量或其他有切确值的表达式
表达式:运算符和操作数组成的具有切确值的符合C语言语法的式子称为表达式
运算符分类
单目运算符(一元运算符)有1个操作数
双目运算符(二元运算符)有2个操作数
三目运算符(三元运算符)有3个操作数。(唯一:条件运算符?:)
优先级与结合性
某些运算符先于其他运算符被执行。
例如,x+y*4,先乘除后加减。
当出现并列的运算优先级别相同的运算符时,由运算符的结合性决定计算的次序。
可以用圆括号 (改变计算顺序。
例如,求三个数的平均值。错误的写法:a+b+c/3正确的写法:(a+b+c)/3
算术运算
基本算术运算符:+-*/%
自增自减运算符++-
作用:使变量值加1或减1优先级与-相同,右结合种类:
前置++i,--i (先执行i+1或i-1,再使用i值相当于i=i+1)后置i++,i--(先使用i值,再执行i+1或i-1)
结合方向:从左向右
优先级:
-高于* /% 高于+-说明:
“-”为单目运算符时,右结合性两整数相除,结果为整数
赋值运算
简单赋值运算符:=
赋值表达式:<变量><赋值运算符><表达式> x=y+2
结合方向:从右向左
说明:
1.将=右侧表达式的值赋给左侧变量
2.=左侧只能为变量,不能是常量或表达式
3.=两侧数据类型不一致时,要进行类型转换
赋值转换规则:使赋值号右边表达式值自动转换成其左边变量的类型
复合赋值运算符:+= -= *= /= %= <<=>>=&=^=|=
逗号运算
>逗号运算符:,
形式:表达式1,表达式2.......表达式n结合性:从左向右
说明:
1.优先级最低
2.逗号表达式的值:等于表达式n的值