操作符分类:算数操作符,移位操作符,位操作符,赋值操作符,单目操作符,关系操作符,逻辑操作符,条件操作符,逗号表达式,等等。
首先,我们从算数操作符说起。
算数操作符
+ - * / %
(1)除了%操作符除外,其他几个操作符都可以作用于整形和浮点型。
(2)对于/操作符如果两个操作数都为整数,执行整数除法,而只要有一个是浮点型则执行浮点型除法。
(3)%操作符的两个数必须为整数,返回的是整除后的余数。
移位操作符:
<< 左移操作符 >>右移操作符
左移操作符移位规则:对于二进制左边抛弃,右边补0.
右移操作符移位规则:(1)逻辑移位左边用0填充右边丢弃
(2)算数移位左边用原改值的符号填充,右边丢弃。
(对于移位运算符,不要移动负数位,这个是标准未定义的)。
位操作符:
& 按位与
| 按位或
^ 按位异或(位操作符的操作数必须是整数)
赋值操作符:
int a; 这里可以给a赋值为1 -> int a=1;
还可以进行连续赋值 a=x=y+1;
复合赋值符:*+=, -= , = , /= ,%= , >>= , <<= , &= , |= , ^=
例如 x+=2既就是x=x+2
单目运算符:
!,-,+,&,sizeof,++,–,*
(类型):强制类型转换 sizeof可以求变量(类型)所占空间的大小
++:前置++表示先+1后使用 ,后置++表示先使用后+1.
关系操作符:
> ,>=,<,<=,!=,==(不可以跟=混淆)
逻辑操作符:
&&逻辑与 , ||逻辑或
例:1&&2----->1 ;1&2---->0
1||2------->1;1|2----->3
条件操作符(单目操作符):
exp1?exp2:exp3
表达意思为 (条件)?表达式1:表达式2 如果满足条件执行表达式1否则执行表达式2
逗号表达式:
exp1,exp2,exp3,exp4,exp5,exp6逗号表达式从左向右依次执行整个表达式的结果是最后一个表达式的结果。
好了,以上基本囊括了c语言大部分表达式,今天的总结就到这里了。